当前位置: 首页 > 面试题库 >

如何防止缓存Javascript文件?

狄海
2023-03-14
问题内容

我有一个简单的html:

<html>
<body>
<head>
<meta charset="utf-8">
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
<script src="test.js"></script>
</body>
</html>

在test.js中,我更改了Javascript函数,但是我的浏览器正在缓存该文件。如何禁用脚本src的缓存?


问题答案:

将随机查询字符串添加到 src

您可以通过在每次更改时增加查询字符串来手动执行此操作:

<script src="test.js?version=1"></script>

或者,如果您使用服务器端语言,则可以自动生成以下内容:

ASP.NET:

<script src="test.js?rndstr=<%= getRandomStr() %>"></script>


 类似资料:
  • 我的项目是这样组织的: 在我的calculate.js文件中,我对数据库进行了一个ajax调用,并且我检索了一些值以显示在statistics.html中的表中,但问题是,一旦计算出这些值,这些值就会被缓存,当我再次调用calculate.js以获取其他数据时,第一次显示的信息也是相同的。 但他们还在。我怎么解决这个? 编辑: 这是我的rest控制器:@RequestMapping(value=“

  • 问题内容: 我正在使用PHP开发一个简单的网站。 开发配置: WAMP 生产配置: LAMP 在测试时,我更改了CSS文件,但是当我重新加载页面时,我的浏览器(不确定)仍使用旧的缓存CSS。 我进行了一些谷歌搜索,发现了已经尝试过的其他解决方案 在CSS末尾附加查询 使用(在Firefox中)强制获取资源 禁用Firefox缓存以及使用Firefox加载项。 当这些都不起作用时,我做了更多的谷歌搜

  • 问题内容: 我已经编写了一个Linux驱动程序,该驱动程序ioremaps将特定设备的PCI BAR0导出为sysfs二进制属性,允许用户空间直接控制它。 当我尝试在属性顶部使用MMAP来直接访问该位内存(从Userland程序)时,问题就浮现了。读取可以很好地完成并返回期望值,尽管当我写入该内存时,它似乎被缓存在内核和内存之间的某个地方,而不是传递给GM​​CH根联合体(以及设备)。我想做的是每

  • 问题内容: 所以我正在做这个小项目,但是在捕捉方面有些麻烦。不能正常工作的一件事是,浏览器一直在缓存包含保存数据的json文件,当我在其他地方更新json时,浏览器会返回到已缓存的json文件的旧版本并读取该旧版本。不幸的是我不想要那个。我根本不希望浏览器完全缓存文件,以便每次加载页面时,它将向服务器请求json文件并根据该文件而不是已缓存的任何文件进行操作。但是,我希望能够缓存页面上的所有其他内

  • 我正在MAMP中开发一个单页Javascript应用程序。我的JavaScript和超文本标记语言模板文件在请求之间被缓存。 有没有一种简单的方法可以在MAMP中指出我想要阻止http文件缓存?可能使用文件?我应该把或修改Mac上MAMP的虚拟主机?

  • 我有一个Dockerfile文件,试图将一个web应用程序打包并部署到一个容器中。在Docker映像构建期间,app的代码从git存储库中获取。以下是Dockerfile快照: 我希望 docker 不要缓存 RUN git 克隆的步骤 -- 以便存储库上正在进行的更新可以反映在 Docker 映像构建中。有可能做到这一点吗?