Javascript 如何在不使用缓存中过时文件的情况下加载脚本js?

Javascript 如何在不使用缓存中过时文件的情况下加载脚本js?,javascript,file,caching,Javascript,File,Caching,我正在使用类似这样的简单方法加载我的js文件: <script src="js/file.js" type="text/javascript" charset="utf-8"></script> 它运行正常,但在我的本地主机上进行测试时,我想它会从缓存中获取js文件。我的更新不会立即加载 目前如何重新加载我的更新?可能是从缓存中获取.js文件。 保持开发人员控制台打开,以避免使用缓存文件。(按F12打开开发

我正在使用类似这样的简单方法加载我的js文件:

<script src="js/file.js" type="text/javascript" charset="utf-8"></script>

它运行正常,但在我的本地主机上进行测试时,我想它会从缓存中获取js文件。我的更新不会立即加载


目前如何重新加载我的更新?

可能是从缓存中获取.js文件。 保持开发人员控制台打开,以避免使用缓存文件。(按F12打开开发者控制台)


文件未从“cookies”加载。从站点的相对路径加载文件。 如果您在localhost广告示例中提供服务,它将提供来自
http://localhost/js/file.js

您没有显示更改的问题是因为您的js被缓存在浏览器中,这是许多浏览器的默认功能,以避免用户再次下载已下载的文件

作为解决方法,您可以更改

<script src="js/file.js" type="text/javascript" charset="utf-8"></script> 

希望这有帮助

“它从cookies中获取js文件”有证据证实这个假设吗?这听起来很奇怪,几乎不可能。“它从cookies中获取js文件”我想你是指“缓存”,而不是“cookies”。您可以在服务器上设置标题,告诉浏览器不要缓存该资源,或者,例如,如果您使用Chrome,则打开开发控制台(F12),转到网络选项卡,并选中“禁用缓存”复选框。这也是一个不错的方法,但在这种情况下,另一种解决方案似乎更有效。不管怎样,这个知识也很有趣。当然,我会记在心里的。谢谢!另一种解决方案只适用于您。当您将代码部署到实时用户时,他们将看到旧版本。但对于发展来说,这是真的。我没想过。你说得对。我认为我可以在部署文件时使用这种方法,因为在进行测试时我可以使用这种解决方案是吗?因为一直在改变这个变量,而改变代码会让我的生活很艰难。这就是为什么我选择了解决方案2:

<script src="js/file.js?v=1" type="text/javascript" charset="utf-8"></script> 
<script src='js/file.js?v=<?= time() ?>'></script>