From 6949291fcd60cffb4bf07cd5f0aefd4eb2a67ce9 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Tue, 16 Feb 2021 16:04:47 +0100 Subject: [PATCH] Check for started. --- backend/src/Squidex.Web/Pipeline/CachingFilter.cs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/backend/src/Squidex.Web/Pipeline/CachingFilter.cs b/backend/src/Squidex.Web/Pipeline/CachingFilter.cs index bab2cff5d..295ba28f4 100644 --- a/backend/src/Squidex.Web/Pipeline/CachingFilter.cs +++ b/backend/src/Squidex.Web/Pipeline/CachingFilter.cs @@ -28,16 +28,17 @@ namespace Squidex.Web.Pipeline public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { - cachingManager.Start(context.HttpContext); + var httpContext = context.HttpContext; + + cachingManager.Start(httpContext); 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); } }