强制刷新客户端浏览器

时间:2012-06-01 18:00:11

标签: javascript http caching browser-cache

我在javascript文件中添加了相当大的更改。但是,为了注册新的更改,我需要刷新我的浏览器。我想这也是所有其他人使用这个网站的方式。

有没有办法让客户端的浏览器缓存无效并强制它下载新的js文件?

4 个答案:

答案 0 :(得分:4)

您可以重命名该文件,或只是在加载文件时添加随机参数:

<script src="/javascripts/application.js?version=4" type="text/javascript"></script>

答案 1 :(得分:3)

您可以在文件名中添加参数,例如

<script src="script.js?rnd=2131231"></script>

答案 2 :(得分:1)

有一个非常全面的讨论here,有几种方法可以做到这一点 如果您的项目不够大或者您不使用apache,推荐的解决方案(mod_pagespeed)可能不是最佳解决方案,在这种情况下,我建议使用以下格式:

<script src="/{sha_1_here}/script.js"></script>

而不是GET参数,因为显然某些浏览器不会使用参数缓存脚本 这应该适用于所有地方,您只需要重写URL服务器端。

答案 3 :(得分:0)

出于开发目的,我在浏览器端禁用缓存,以便始终获取缓存。

但是对于生产,要重置以便所有客户端用户的浏览器都应该下载新版本,您可以查看apache的设置以使缓存文件失效。

相关问题