js、css、img等浏览器缓存问题的2种解决方案
更新时间:2013年10月23日 17:45:55 作者:
浏览器缓存的意义在于提高了执行效率,但是也随之而来带来了一些问题,导致服务端修改了js、css,客户端不能更新,下面有几个不错的方法可以解决此问题,感兴趣的朋友可以参考下
细节决定成败!浏览器缓存的意义在于提高了执行效率,但是也随之而来带来了一些问题,导致服务端修改了js、css,客户端不能更新
方法一 生成随机数字
<script type=”text/javascript“ src=”/js/test.js?+Math.random()“></script>
缺点,浏览器缓存失去意义,每次都动态加载。
方法二 版本号控制,设置全局变量,每次发布前版本号加1
<script type=”text/javascript“ src=”/js/test.js?v=<%=v%>“></script>
推荐这种做法,这种做法比较简单。缺点是HTML页面不能使用,但是这种页面应该不太多
更多方法:采用读取文件大小、文件修改时间生成MD5的方式自动化实现,程序自动构建时压缩合并js并且全局替换版本,方式复杂,有兴趣的可以研究一下
谁还有更好的方法?
方法一 生成随机数字
复制代码 代码如下:
<script type=”text/javascript“ src=”/js/test.js?+Math.random()“></script>
缺点,浏览器缓存失去意义,每次都动态加载。
方法二 版本号控制,设置全局变量,每次发布前版本号加1
复制代码 代码如下:
<script type=”text/javascript“ src=”/js/test.js?v=<%=v%>“></script>
推荐这种做法,这种做法比较简单。缺点是HTML页面不能使用,但是这种页面应该不太多
更多方法:采用读取文件大小、文件修改时间生成MD5的方式自动化实现,程序自动构建时压缩合并js并且全局替换版本,方式复杂,有兴趣的可以研究一下
谁还有更好的方法?
相关文章
JavaScript报错:Uncaught TypeError: XXX is
在 JavaScript 编程中,“Uncaught TypeError: XYZ is not iterable” 是一种常见的错误,这种错误通常发生在试图对一个非可迭代对象进行迭代操作时,了解这种错误的成因和解决方法,对于编写健壮的代码至关重要,需要的朋友可以参考下2024-07-07


最新评论