如何强制客户端刷新JavaScript文件?

我们目前正在进行一个私有测试,因此仍在进行相当快速的更改,尽管很明显,随着使用量的增加,我们将放缓这一过程。话虽如此,我们遇到的一个问题是,在我们推出新JavaScript文件的更新后,客户端浏览器仍然使用该文件的缓存版本,并且看不到更新。显然,在支持电话中,我们可以简单地通知他们执行ctrlF5刷新,以确保他们从服务器获取最新文件,但最好在此之前处理此问题

我们目前的想法是简单地在JavaScript文件的名称上附加一个版本号,然后在进行更改时,在脚本上增加版本并更新所有引用。这确实完成了任务,但是更新每个版本上的引用可能会很麻烦

因为我确信我们不是第一个处理这个问题的人,我想我会把它扔给社区。当您更新代码时,如何确保客户端更新其缓存?如果您正在使用上述方法,您是否正在使用简化更改的流程

据我所知,常见的解决方案是添加?<版本&gt到脚本的src链接

例如:

<script type=“text/javascript”src=”https://stackoverflow.com/questions/32414/myfile.js?1500“&gt&lt/脚本>

我假设在这一点上,没有比查找替换更好的方法来增加所有脚本标记中的这些“版本号”了

你可能有一个版本控制系统为你做这件事?例如,大多数版本控制系统都有一种在签入时自动插入修订号的方法

它看起来像这样:

<script type=“text/javascript”src=”https://stackoverflow.com/questions/32414/myfile.js?$$修订版$$”&gt&lt/脚本>

当然,总有像这样更好的解决方案

发表评论