控制浏览器缓存生成的JavaScript

时间:2013-02-20 20:17:43

标签: javascript asp.net-mvc browser-cache

背景

MVC 4应用程序需要包含从数据库生成的JavaScript。生成的文件相对较大,只是偶尔更改(每2-10天更改一次)。

的接受答案

Generate javascript file on the fly in asp.net mvc

为生成JavaScript提供了一个很好的框架。但是,JavaScript资源的URL是静态的。据我了解,浏览器将缓存该资源。该缓存可以由OutputCacheAttribute控制。

问题

如果生成的JavaScript发生更改,我怎样才能使浏览器缓存过期,类似于捆绑包的工作方式? <{1}}的{​​{1}}不是一个选项。

1 个答案:

答案 0 :(得分:1)

我有类似的情况,每次重新生成JavaScript文件时,我所做的就是在脚本标记的查询字符串的末尾附加一个随机的Guid。

例如:

<script type="text/javascript" src="/scripts/generated.js?id=7c97aa32-29d9-dd11-a926-001d096d84f2"></script>

您可以使用随机字符串甚至是时间戳,只要更改查询参数,就会下载新的脚本文件。