经常遇到更新网页以后需要客户或实施使用ctrl-f5对浏览器进行刷新才能获取到最新的网页,原因是浏览器对之前的网页文件进行了缓存,单纯的刷新还是获取到的之前缓存的网页,对用户使用造成困惑,增加沟通量。
通过在后端startup.cs文件中添加如下代码,可控制浏览器不对网页进行缓存,即更新网页后不需要ctrl-f5刷新,直接刷新即可。
app.UseStaticFiles(new StaticFileOptions()
{
FileProvider = new PhysicalFileProvider(Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "wwwroot")),
RequestPath = new Microsoft.AspNetCore.Http.PathString("/src"),
OnPrepareResponse = context =>
{
context.Context.Response.Headers.Add("Cache-Control", "no-cache, no-store");
context.Context.Response.Headers.Add("Expires", "-1");
}
});
OnPrepareResponse即为配置项。