js、css、img等浏览器缓存问题的2种解决方案


Posted in Javascript onOctober 23, 2013

细节决定成败!浏览器缓存的意义在于提高了执行效率,但是也随之而来带来了一些问题,导致服务端修改了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并且全局替换版本,方式复杂,有兴趣的可以研究一下

谁还有更好的方法?

Javascript 相关文章推荐
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
Dec 19 Javascript
javascript XMLHttpRequest对象全面剖析
Apr 24 Javascript
用JSON做数据传输格式中的一些问题总结
Dec 21 Javascript
JS Replace()的高级使用方法介绍
Jun 29 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
Sep 01 Javascript
在浏览器中打开或关闭JavaScript的方法
Jun 03 Javascript
JS使用onerror捕获异常示例
Aug 03 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 jQuery
从对象列表中获取一个对象的方法,依据关键字和值
Sep 20 Javascript
Angularjs实现数组随机排序的方法
Oct 02 Javascript
JS页面动态绘图工具SVG,Canvas,VML介简介
Oct 16 Javascript
JS ES6异步解决方案
Apr 29 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
Oct 23 #Javascript
3分钟写出来的Jquery版checkbox全选反选功能
Oct 23 #Javascript
js(jQuery)获取时间的方法及常用时间类搜集
Oct 23 #Javascript
js简单实现HTML标签Select联动带跳转
Oct 23 #Javascript
JS Date函数整理方便使用
Oct 23 #Javascript
改变文件域的样式实现思路同时兼容ie、firefox
Oct 23 #Javascript
JavaScript instanceof 的使用方法示例介绍
Oct 23 #Javascript
You might like
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
javascript测试题练习代码
2012/10/10 Javascript
JavaScript控制Session操作方法
2013/01/17 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
2013/05/11 Javascript
javascript简单实现滑动菜单效果的方法
2015/07/27 Javascript
关于JS中prototype的理解
2015/09/07 Javascript
nodejs初步体验篇
2015/11/23 NodeJs
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
AngularJS中的包含详细介绍及实现示例
2016/07/28 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
jQuery实现的动态文字变化输出效果示例【附演示与demo源码下载】
2017/03/24 jQuery
微信小程序获取微信运动步数的实例代码
2017/07/20 Javascript
Vue-Router实现组件间跳转的三种方法
2017/11/07 Javascript
js 实现watch监听数据变化的代码
2019/10/13 Javascript
[06:57]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD 选手采访
2021/03/11 DOTA
python之模拟鼠标键盘动作具体实现
2013/12/30 Python
python用户管理系统的实例讲解
2017/12/23 Python
python opencv之分水岭算法示例
2018/02/24 Python
Python3.6.0+opencv3.3.0人脸检测示例
2018/05/25 Python
python整小时 整天时间戳获取算法示例
2019/02/20 Python
Django中使用Whoosh进行全文检索的方法
2019/03/31 Python
python pandas时序处理相关功能详解
2019/07/03 Python
python中bytes和str类型的区别
2019/10/21 Python
python二维键值数组生成转json的例子
2019/12/06 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
2020/04/23 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
使用Python将语音转换为文本的方法
2020/08/10 Python
python全栈开发语法总结
2020/11/22 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
英国女性时尚鞋类的潮流制造者:Koi Footwear
2018/10/19 全球购物
Vector, ArrayList, HashTable, HashMap哪些是线程安全的,哪些不是
2015/10/12 面试题
七年级历史教学反思
2014/02/05 职场文书
汽车维修求职信
2014/06/15 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
2019学校运动会开幕词
2019/05/13 职场文书
Python中的嵌套循环详情
2022/03/23 Python