【发布时间】:2016-03-29 11:50:20
【问题描述】:
我确定以前有人问过这个问题,但我找不到完全相同的问题。
我有一个使用大量 javascript 文件的天蓝色云服务。我仍在开发该网站,因此 javascript 文件经常更改。当 javascript 文件发生更改时,我会清除浏览历史记录,在重新运行代码之前选择“临时 Internet 文件和网站文件”。但是,该网站似乎坚决保留我的 javascript 文件并继续运行旧代码。这是 Chrome、IE 和 Firefox 中的问题。如果我多次清除浏览历史记录,它最终会找到新代码。
我知道有一些方法可以通过更改新版本的 js 文件的路径来强制浏览器重新加载文件。但是,我只是在测试,不想每次更改几行代码时都必须更新文件名。所以我想要一种方法来清除浏览器中的缓存。
我还在为我的文件使用 html5 离线缓存,所以这可能会增加复杂性。
如何轻松清除旧的 javascript 文件?我可以以编程方式执行此操作吗?
【问题讨论】:
-
你是用asp.net渲染页面还是纯html?
-
我有几个asp页面,但我的大部分页面都是html
-
我很确定,以编程方式(在客户端)无法完成。它可以在服务器上完成,打个招呼不要缓存。我仍然认为,将 get 参数添加到您的 js 包含将是最简单的,例如
<script src="script.js?123"></script>其中123可能是时间戳,并在更新文件时更改它。我认为使用 gulp 或 grunt 可以轻松更新这些参数。 -
好的,让我们忘记以编程方式进行。我知道更改文件名是可行的,但这需要付出努力——我的脱机清单文本文件中列出了所有文件,所以不要认为时间戳可以轻松更改所有这些文件。我想要的只是一种在我打开浏览器时清除 js 文件缓存的方法。 “清除浏览历史记录”不起作用是否有某种原因?在 IE 中,我曾经能够只刷新页面,这会拉入新文件 - 但这似乎不再有效。
-
或许this?
标签: javascript azure caching