我想问一下有没有办法阻止Firefox缓存脚本(.js文件)。
我有一个项目(ASP.Net Web App)在 Firefox 上存在缓存问题。当我第一次运行应用程序(脚本正在 Firefox 上缓存)并修改脚本并重新运行应用程序时,Firefox 使用缓存的脚本而不是更新的脚本。
我使用的是 Firefox 3.6.13。
我已经尝试使用 HttpHeaders 但似乎 Firefox 忽略了我的代码。
这是我的代码:
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.Cache.SetAllowResponseInBrowserHistory(false);
HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
HttpContext.Current.Response.Cache.SetNoStore();
我尝试将此代码放在 global.asax > Application_BeginRequest 和 MasterPage.aspx.cs > Page_Load 处,但它不起作用。
提前致谢。
一种技术是向 URL 添加随机元素作为查询字符串,这样浏览器就不知道如何缓存脚本:
<script src="jquery.js?<%=DateTime.Now.Ticks %>" />
更好的方法是附加程序集的当前内部版本号,这样您就可以在脚本未更改的情况下获得脚本缓存的性能优势。然而,只有当您从不使用二进制版本“带外”更改脚本文件时,这才有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)