diff options
-rw-r--r-- | Timeline.Tests/IntegratedTests/UserAvatarTests.cs | 11 | ||||
-rw-r--r-- | Timeline/Controllers/UserAvatarController.cs | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/Timeline.Tests/IntegratedTests/UserAvatarTests.cs b/Timeline.Tests/IntegratedTests/UserAvatarTests.cs index 1cb15edb..a98d807e 100644 --- a/Timeline.Tests/IntegratedTests/UserAvatarTests.cs +++ b/Timeline.Tests/IntegratedTests/UserAvatarTests.cs @@ -93,6 +93,17 @@ namespace Timeline.Tests.IntegratedTests RequestUri = new Uri(client.BaseAddress, "users/user/avatar"),
Method = HttpMethod.Get,
};
+ request.Headers.TryAddWithoutValidation("If-None-Match", "\"aaa\"");
+ var res = await client.SendAsync(request);
+ res.Should().HaveStatusCode(HttpStatusCode.OK);
+ }
+
+ {
+ var request = new HttpRequestMessage()
+ {
+ RequestUri = new Uri(client.BaseAddress, "users/user/avatar"),
+ Method = HttpMethod.Get,
+ };
request.Headers.Add ("If-None-Match", eTag.ToString());
var res = await client.SendAsync(request);
res.Should().HaveStatusCode(HttpStatusCode.NotModified);
diff --git a/Timeline/Controllers/UserAvatarController.cs b/Timeline/Controllers/UserAvatarController.cs index d072bff2..96b43bdb 100644 --- a/Timeline/Controllers/UserAvatarController.cs +++ b/Timeline/Controllers/UserAvatarController.cs @@ -77,7 +77,7 @@ namespace Timeline.Controllers if (!EntityTagHeaderValue.TryParseStrictList(value, out var eTagList))
return BadRequest(CommonResponse.BadIfNonMatch());
- if (eTagList.First(e => e.Equals(eTag)) != null)
+ if (eTagList.FirstOrDefault(e => e.Equals(eTag)) != null)
{
Response.Headers.Add(CacheControlHeaderKey, CacheControlHeaderValue);
Response.Headers.Add("ETag", eTagValue);
|