博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js文件被浏览器缓存
阅读量:5293 次
发布时间:2019-06-14

本文共 795 字,大约阅读时间需要 2 分钟。

如果修改了js文件中的js代码,发布代码到线上后。用户的浏览器使用的还是原来js缓存。所以并不会马上生效。

如何才能让浏览器使用最新的js文件呢?

我去看了一下淘宝,发现也是这样一种方式额,不知道对不对?

 

如下:

 

 

 

 

 

 15年8月12日补充:

 

  公司有好几千万注册会员,于是第三方应用使用我们网站会员帐号实现在第三方网站登录,需要设计oauth2.0授权的平台,于是需要参考微博的oauth体制。

 

  无意中发现他们的css也是使用年月日来控制

 

 

 

进一步思考:

 

这种加时间方法是可行。。不是系统生成的时间,不是所有js文件都加。

 

是不是可以进一步考虑一种办法,用程序来进行开关呢?

 

自己勾选。如果这个文件修改了。那么就设置为更新。模版中判断,就根据这个开关,把时间戳自动打上去?

 

不过这样子觉得没必要。因为还没到那么重大。其实初期,完全可以程序手动把日期打上去即可了。

 

该了什么js文件,就给哪个js文件加,这样已经是折衷了。就跟改代码一样。代码都要修改的,这点改也没多少工作量。

 

 

总结思路:

 

js文件的内容修改了,可以加个t参数表明一下日期,用这个日期来作为版本号,看到日期也能知道是哪天发布的。

没有修改js文件根本就不用修改日期。

 

 

 

实践:

         <script type="text/javascript" src="{
{passport_host}}js/common.js?t=20150622" ></script>

 

如果下一次修改了这个js文件,那么发布的时候,就修改日期

 

<script type="text/javascript" src="{

{passport_host}}js/common.js?t=20150628" ></script>

 

没有修改的js文件,保留原来的值不动即可。

转载于:https://www.cnblogs.com/yxyht/p/5526382.html

你可能感兴趣的文章
变量提升
查看>>
线性表可用顺序表或链表存储的优缺点
查看>>
在现有的mysql主从基础上,搭建mycat实现数据的读写分离
查看>>
[Flex] flex手机项目如何限制横竖屏?只允许横屏?
查看>>
tensorflow的graph和session
查看>>
6-1 并行程序模拟 uva210
查看>>
JavaScript动画打开半透明提示层
查看>>
Mybatis生成resulteMap时的注意事项
查看>>
jquery-jqzoom 插件 用例
查看>>
1007. Maximum Subsequence Sum (25)
查看>>
《算法》C++代码 快速排序
查看>>
iframe的父子层跨域 用了百度的postMessage()方法
查看>>
Js apply方法与call方法详解 附ES6新写法
查看>>
linux php全能环境一键安装,小白福利!
查看>>
图片生成缩略图
查看>>
关于Mysql select语句中拼接字符串的记录
查看>>
动态规划 例子与复杂度
查看>>
[BZOJ4567][SCOI2016]背单词(Trie+贪心)
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>