Browse Source

Check for started.

pull/662/head
Sebastian 5 years ago
parent
commit
6949291fcd
  1. 13
      backend/src/Squidex.Web/Pipeline/CachingFilter.cs

13
backend/src/Squidex.Web/Pipeline/CachingFilter.cs

@ -28,16 +28,17 @@ namespace Squidex.Web.Pipeline
public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
{ {
cachingManager.Start(context.HttpContext); var httpContext = context.HttpContext;
cachingManager.Start(httpContext);
var resultContext = await next(); var resultContext = await next();
if (resultContext.HttpContext.Response.Headers.TryGetString(HeaderNames.ETag, out var etag)) if (httpContext.Response.HasStarted == false &&
httpContext.Response.Headers.TryGetString(HeaderNames.ETag, out var etag) &&
IsCacheable(httpContext, etag))
{ {
if (IsCacheable(resultContext.HttpContext, etag)) resultContext.Result = new StatusCodeResult(304);
{
resultContext.Result = new StatusCodeResult(304);
}
} }
} }

Loading…
Cancel
Save