【发布时间】:2021-01-31 07:09:26
【问题描述】:
我按照本教程 (https://docs.microsoft.com/en-us/aspnet/core/performance/caching/response?view=aspnetcore-2.1) 在我的控制器操作上实现了 ResponseCache。
简而言之,我添加了
services.AddResponseCaching(); 和 app.UseResponseCaching(); 在启动中,这个标签 [ResponseCache( Duration = 30)] 在我的控制器上。
然后我在我的视图中添加了一个<h2>@DateTime.Now</h2>,而我所期望的......是相同的 datetime.now 30 秒。
但它没有,它只是在每次重新加载时显示新时间 (F5)。
我确保我在 chrome 中的 devtools 没有说“禁用缓存”。
在我的本地机器上打开和不打开 chrome devtools,现在正在尝试一个全新的 .net core mvc 项目。
我注意到的一件事(打开 devtools)是请求有这个标头:Cache-Control: max-age=0。这会影响行为吗?
我认为这意味着什么,因为它看起来像请求说“没有缓存”,但这让我觉得很奇怪,因为我没有把标题放进去,我会说 chrome 的默认行为不会忽略缓存?
【问题讨论】: