image caching fix

This commit is contained in:
Hamid Reza Mohammadi 2026-09-04 13:56:29 +03:30
parent cdd6107319
commit b7992bc919
2 changed files with 8 additions and 1 deletions

View File

@ -339,6 +339,7 @@ namespace RMuseum.Controllers
} }
Response.GetTypedHeaders().LastModified = lastModified; Response.GetTypedHeaders().LastModified = lastModified;
Response.Headers.CacheControl = nocache ? "no-cache" : "public,max-age=86400";
var requestHeaders = Request.GetTypedHeaders(); var requestHeaders = Request.GetTypedHeaders();
if (requestHeaders.IfModifiedSince.HasValue && if (requestHeaders.IfModifiedSince.HasValue &&
@ -386,11 +387,16 @@ namespace RMuseum.Controllers
if (res.Result) if (res.Result)
{ {
var cacheKey = $"poet/image/{poet.Result.Cat.UrlSlug}.png"; var cacheKey = $"poet/image/{poet.Result.Cat.UrlSlug}.gif";
var cacheKeyForLastModified = $"{cacheKey}/lastModified";
if (_memoryCache.TryGetValue(cacheKey, out string imagePath)) if (_memoryCache.TryGetValue(cacheKey, out string imagePath))
{ {
_memoryCache.Remove(cacheKey); _memoryCache.Remove(cacheKey);
} }
if (_memoryCache.TryGetValue(cacheKeyForLastModified, out DateTime cachedLastModified))
{
_memoryCache.Remove(cacheKeyForLastModified);
}
} }
return Ok(res.Result); return Ok(res.Result);

View File

@ -52,6 +52,7 @@ namespace RMuseum.Controllers
Response.GetTypedHeaders().LastModified = img.Result.LastModified; Response.GetTypedHeaders().LastModified = img.Result.LastModified;
Response.Headers.CacheControl = "public,max-age=86400";
var requestHeaders = Request.GetTypedHeaders(); var requestHeaders = Request.GetTypedHeaders();
if (requestHeaders.IfModifiedSince.HasValue && if (requestHeaders.IfModifiedSince.HasValue &&