diff --git a/VPMReposSynchronizer.Entry/Controllers/RepoController.cs b/VPMReposSynchronizer.Entry/Controllers/RepoController.cs index 7382270..837498a 100644 --- a/VPMReposSynchronizer.Entry/Controllers/RepoController.cs +++ b/VPMReposSynchronizer.Entry/Controllers/RepoController.cs @@ -16,6 +16,7 @@ namespace VPMReposSynchronizer.Entry.Controllers; [Route("repos")] [Produces("application/json")] [OutputCache(PolicyName = "vpm")] +[ResponseCache(Duration = 30)] public class RepoController( RepoBrowserService repoBrowserService, RepoMetaDataService repoMetaDataService, diff --git a/VPMReposSynchronizer.Entry/Controllers/StatusController.cs b/VPMReposSynchronizer.Entry/Controllers/StatusController.cs index 2af945f..ea3cdbd 100644 --- a/VPMReposSynchronizer.Entry/Controllers/StatusController.cs +++ b/VPMReposSynchronizer.Entry/Controllers/StatusController.cs @@ -12,6 +12,8 @@ namespace VPMReposSynchronizer.Entry.Controllers; [ApiController] [Route("status")] [Produces("application/json")] +[OutputCache(PolicyName = "status")] +[ResponseCache(Duration = 10)] public class StatusController(RepoSyncStatusService repoSyncStatusService) : ControllerBase { /// diff --git a/VPMReposSynchronizer.Entry/Controllers/SyncTaskController.cs b/VPMReposSynchronizer.Entry/Controllers/SyncTaskController.cs index fe12aae..50a0889 100644 --- a/VPMReposSynchronizer.Entry/Controllers/SyncTaskController.cs +++ b/VPMReposSynchronizer.Entry/Controllers/SyncTaskController.cs @@ -13,6 +13,7 @@ namespace VPMReposSynchronizer.Entry.Controllers; [Route("syncTasks")] [Produces("application/json")] [OutputCache(PolicyName = "status")] +[ResponseCache(Duration = 10)] public class SyncTaskController( RepoSyncTaskService repoSyncTaskService, RepoMetaDataService repoMetaDataService, diff --git a/VPMReposSynchronizer.Entry/Controllers/VpmRepoController.cs b/VPMReposSynchronizer.Entry/Controllers/VpmRepoController.cs index cbe8825..0936b0d 100644 --- a/VPMReposSynchronizer.Entry/Controllers/VpmRepoController.cs +++ b/VPMReposSynchronizer.Entry/Controllers/VpmRepoController.cs @@ -20,6 +20,7 @@ namespace VPMReposSynchronizer.Entry.Controllers; [Route("vpm")] [Produces("application/json")] [OutputCache(PolicyName = "vpm")] +[ResponseCache(Duration = 30)] public class VpmRepoController( RepoMetaDataService repoMetaDataService, IOptions options, diff --git a/VPMReposSynchronizer.Entry/Program.cs b/VPMReposSynchronizer.Entry/Program.cs index 33affdc..e12f17c 100644 --- a/VPMReposSynchronizer.Entry/Program.cs +++ b/VPMReposSynchronizer.Entry/Program.cs @@ -218,6 +218,8 @@ #endregion +builder.Services.AddResponseCaching(); + #region Others builder.Services.AddControllers(); @@ -314,6 +316,8 @@ app.UseCors(); +app.UseResponseCaching(); + app.UseOutputCache(); if (fileHostServiceOptions.EnableRateLimit) app.UseRateLimiter();