我尝试过这个中间件,但浏览器仍在保存文件.
public void Configure(IApplicationBuilder app) { app.UseSession(); app.UseDefaultFiles(); app.UseStaticFiles(new StaticFileOptions { OnPrepareResponse = context => context.Context.Response.Headers.Add("Cache-Control","no-cache") }); }
解决方法
尝试添加Expires标头:
app.UseStaticFiles(new StaticFileOptions() { OnPrepareResponse = context => { context.Context.Response.Headers.Add("Cache-Control","no-cache,no-store"); context.Context.Response.Headers.Add("Expires","-1"); } });
另一种方法是添加一个查询字符串,该查询字符串会在开发过程中更改为请求的结尾.在这种情况下不需要中间件.
<environment names="Development"> <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css?@DateTime.Now.Ticks" /> <link rel="stylesheet" href="~/css/site.css?@DateTime.Now.Ticks" /> </environment>