我在用户的浏览器上缓存了一个JS文件的旧版本,其过期时间设置为10年(从那时起,我已经学会了如何在我的web服务器上正确设置)。我已经更新了JS文件,我希望我的用户能够从中受益。
编辑:理想情况下,我想要解决这个问题,而不改变承载脚本的页面上的HTML标记。
发布于 2010-02-23 18:01:03
总之..。不是的。
您可以在脚本标记的源地址的末尾添加一些内容。浏览器将将其视为与当前缓存的文件不同的文件。
<script src="/js/something.js?version=2"></script>不确定你的其他选择。
发布于 2013-03-13 19:12:01
在HTML5中,您可以使用应用程序缓存,这样您就可以控制缓存何时到期
需要将路径添加到清单中。
<!DOCTYPE HTML><html manifest="demo.appcache">
在您的demo.appcache文件中,您只需将要缓存的每个文件放在
CACHE MANIFEST
# 2013-01-01 v1.0.0
/myjsfile.js当您希望浏览器下载一个新文件时,可以更新清单。
CACHE MANIFEST
# 2013-02-01 v1.0.1
/myjsfile.js只要确保使用发布日期或版本(或其他方式)修改缓存清单,当浏览器看到清单已经更改时,它将下载其中的所有文件。
如果清单没有更改,浏览器将不会更新本地文件,即使该文件是在服务器上修改的。
欲了解更多信息,请访问HTML5应用缓存
发布于 2010-02-23 18:01:39
您可以向您的URL添加一个虚拟参数。
<script src='oldscriptname.js?foo=bar'></script>e: f;b
主要的问题是,如果您设置了一个简单的“过期”头过期,那么具有文件缓存的浏览器甚至不会为它与您联系。即使脚本有办法破解浏览器并清除缓存,您的旧脚本也不会这样做,因此您无法将该功能提供给客户端。
https://stackoverflow.com/questions/2320500
复制相似问题