网站正在狂测阶段,每发布一版之后,有时候会因为缓存导致错误,请问如何用代码控制,使浏览器加载新版本时不要用缓存呢?
1 回答
慕虎7371278
TA贡献1802条经验 获得超4个赞
你应该考虑的是如何实现文件版本号 hash 化而不是本末倒置去禁用缓存。
当然,本地开发环境直接禁用浏览器缓存即可。
meta 标签的控制
// 栗子如下<meta http-equiv="cache-control" content="max-age=0" /><meta http-equiv="cache-control" content="no-cache" /><meta http-equiv="expires" content="0" /><meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" /><meta http-equiv="pragma" content="no-cache" />
简单总结一下我刚才查的资料
http-equiv=“pragma"
使用content属性的no-cache值表示是否缓存网页http-equiv=“expires"
content设为日期能够控制缓存何时过期(注意必须使用GMT时间格式),等于0或-1禁用缓存浏览本站对于各项
cache-control
的解释,大家可以查看该链接
操作文件名使浏览器重新加载文件
可以在文件名后面加上MD5,时间戳,哈希值等随机数
比如我使用的是webpack打包,此时可以在webpack.config.js
中对output
的文件名进行配置
output: { filename: "[name]-[hash:6].js” // 加入了哈希 }
添加回答
举报
0/150
提交
取消