From a0a427f181df61f0cd1702c36d91af180440c45a Mon Sep 17 00:00:00 2001 From: HeavenVR Date: Tue, 11 Mar 2025 02:04:06 +0100 Subject: [PATCH] Start work on response-caching middleware --- API/Controller/Public/GetStats.cs | 1 + API/Controller/Version/_ApiController.cs | 1 + Common/OpenShockMiddlewareHelper.cs | 1 + Common/OpenShockServiceHelper.cs | 1 + 4 files changed, 4 insertions(+) diff --git a/API/Controller/Public/GetStats.cs b/API/Controller/Public/GetStats.cs index 1f8153ad..50a87403 100644 --- a/API/Controller/Public/GetStats.cs +++ b/API/Controller/Public/GetStats.cs @@ -17,6 +17,7 @@ public sealed partial class PublicController /// /// The statistics were successfully retrieved. [HttpGet("stats")] + [ResponseCache(Duration = 60, Location = ResponseCacheLocation.Any)] [ProducesResponseType>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)] public async Task GetOnlineDevicesStatistics([FromServices] IConnectionMultiplexer redisConnectionMultiplexer) { diff --git a/API/Controller/Version/_ApiController.cs b/API/Controller/Version/_ApiController.cs index f2305e68..fdd60d00 100644 --- a/API/Controller/Version/_ApiController.cs +++ b/API/Controller/Version/_ApiController.cs @@ -26,6 +26,7 @@ public sealed partial class VersionController : OpenShockControllerBase /// /// The version was successfully retrieved. [HttpGet] + [ResponseCache(Duration = 60, Location = ResponseCacheLocation.Any)] [ProducesResponseType>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)] public IActionResult GetBackendVersion([FromServices] ApiConfig apiConfig) { diff --git a/Common/OpenShockMiddlewareHelper.cs b/Common/OpenShockMiddlewareHelper.cs index 82f7c6a0..a1577a51 100644 --- a/Common/OpenShockMiddlewareHelper.cs +++ b/Common/OpenShockMiddlewareHelper.cs @@ -51,6 +51,7 @@ public static IApplicationBuilder UseCommonOpenShockMiddleware(this IApplication KeepAliveInterval = TimeSpan.FromMinutes(1) }); app.UseRouting(); + app.UseResponseCaching(); app.UseAuthentication(); app.UseAuthorization(); diff --git a/Common/OpenShockServiceHelper.cs b/Common/OpenShockServiceHelper.cs index e9f65dd5..8a6400e7 100644 --- a/Common/OpenShockServiceHelper.cs +++ b/Common/OpenShockServiceHelper.cs @@ -95,6 +95,7 @@ public static ServicesResult AddOpenShockServices(this IServiceCollection servic // generic ASP.NET stuff services.AddMemoryCache(); + services.AddResponseCaching(); services.AddHttpContextAccessor(); services.AddWebEncoders(); services.AddProblemDetails();