在新版本上刷新js文件

时间:2013-11-23 16:30:52

标签: javascript .net

我们有一个内部.NET Web应用程序,它有很少的嵌入式JavaScript文件。 每当我们发布新版本的应用程序时,我们都会遇到用户浏览器有旧版本js文件的问题,我们不得不让他们在浏览器上按Ctrl + F5来获取最新版本。

不幸的是,这很烦人。我们考虑在js调用中嵌入一个随机数,这样浏览器就会看到一个更改的URL并自动获取新的js -

有没有人实现过这样的自动化而无需进入并为每个更改过的js手动执行此操作?

PS:不希望通过附加<%DateTime.Now.Ticks%>每次刷新一次。或者类似的策略,只是希望自动为每个版本附加版本。

2 个答案:

答案 0 :(得分:1)

有很多方法可以强制刷新,但实际上常用的是版本控制

在这种方法中,您的javascript文件名具有版本号后缀。只要文件发生变化,版本就会发生变化,所有引用也会发生变化。

例如

ourapp.core.1.1.js

然后

ourapp.core.1.2.js

这也有助于在不同的应用程序之间重用相同的javascript文件。

答案 1 :(得分:0)

以下是我想到的一种方法:

<script type="text/javascript" src="somejsfile.js?<%MyHelperClass.GetVersion()%>

其中GetVersion()从local.config返回最新版本。

在local.config中,有一个这样的键:

<add key="Version" value="1.2"/>

这种方法的一个缺点是您需要记住在每个版本中更改local.config中的版本。或者更好的是,让您的构建脚本每次都询问您的版本,然后将其嵌入local.config。