Javascript 如何关闭Firefox上的缓存?
在开发过程中,我必须一直“清除Firefox中的缓存”,以使其使用最新版本的JavaScript文件 是否有某种设置(about:config)可以完全关闭JavaScript文件的缓存?或者,如果没有,对于所有文件?是否尝试使用CTRL-F5更新页面?在Firefox地址栏中输入“about:config”并设置:Javascript 如何关闭Firefox上的缓存?,javascript,firefox,caching,Javascript,Firefox,Caching,在开发过程中,我必须一直“清除Firefox中的缓存”,以使其使用最新版本的JavaScript文件 是否有某种设置(about:config)可以完全关闭JavaScript文件的缓存?或者,如果没有,对于所有文件?是否尝试使用CTRL-F5更新页面?在Firefox地址栏中输入“about:config”并设置: browser.cache.disk.enable = false browser.cache.memory.enable = false 如果在本地开发,或者使用HTML5的新
browser.cache.disk.enable = false
browser.cache.memory.enable = false
如果在本地开发,或者使用HTML5的新清单属性,您可能还必须在about:config中设置以下内容-
browser.cache.offline.enable = false
可以使用CTRL-F5绕过缓存重新加载
您可以在firefox中设置不使用缓存的首选项
network.http.use-cache = false
您可以将web服务器设置为发送js文件的无缓存/过期/缓存控制头
以下是apache web服务器的一个示例。最好的策略是设计站点,为JS文件构建一个唯一的URL,每次发生更改时都会重置该URL。这样,当没有更改时,它会缓存,但当发生任何更改时,它会立即重新加载 您需要根据特定的环境工具进行调整,但是如果您使用的是PHP/Apache,那么这里有一个非常适合您和最终用户的解决方案
如果您使用服务器端代码,您可以生成一个随机数,并以以下方式将其附加到src的末尾 src=“yourJavascriptFile.js?randomNumber=434534”
每次都随机生成随机数。有一个禁用缓存的选项,可以在需要时很容易地打开和关闭缓存。我使用CTRL-SHIFT-DELETE激活隐私功能,允许您一次清除缓存、重置cookie等。您甚至可以对其进行配置,使其仅能执行此操作,而无需弹出对话框要求您确认。我知道我正在重新提出一个古老的问题,但我今天正试图解决此问题,并找到另一个解决方案。当我想要测试时切换缓存对我来说是不可接受的,正如其他人提到的,硬刷新(ctrl+shift+r)并不总是有效的 相反,我选择将以下内容放在我的dev环境的vhost.conf文件中(也可以在.htaccess中完成):
<FilesMatch "\.(js|css)$">
FileETag None
<IfModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</IfModule>
</FilesMatch>
这迫使我的客户的浏览器在看到新的查询字符串时更新其本地缓存,但随后缓存新副本,直到文件再次更新。在浏览了2个小时的各种备选方案后,这对我来说很有效 我的要求是在我的spring安全web应用程序中禁用js和css文件的缓存。但同时在特定会话中缓存这些文件 建议的方法之一是在每个请求中传递唯一的id 这就是我所做的:-而不是
<script language="javascript" src="js/home.js"></script>
我曾经
<script language="javascript" src="js/home.js?id=${pageContext.session.id}"></script>
欢迎对上述方法的任何反对意见。安全问题?上两个解决方案有其优缺点,但它们都是非常好的解决方案
这两种解决方案看起来都很棒,很优雅,这取决于您的需要。没有专门的选项来禁用JavaScript缓存,您必须完全禁用缓存
在网络选项卡的下拉菜单上有一个选项来禁用浏览器缓存。在更高版本的Firefox中,如Nightly,有一个名为“禁用缓存”的选项,您可以通过单击设备来找到它。该选项仅在当前会话中有效,这意味着当您关闭inspector并重新启动它时,如果您想禁用catch,则必须再次检查它。在要禁用缓存的同一页面上,请执行以下操作: 仅供参考:我正在使用的版本是30.0 你可以:
之后,它将从自己的页面重新加载页面(您已打开),每件事都会被重新缓存,任何进一步的请求也会被重新缓存,您可以让web开发人员始终保持打开状态以保持关注并确保其始终打开(检查)。如果您使用FireBug,在“网络”选项卡的下拉菜单上,有一个选项“禁用浏览器缓存”
在firefox 45中,可以通过更改以下值来设置磁盘缓存选项: browser.cache.disk.enable 可以在“about:config”页面上设置该值 在上,我找到了“browser.cache.disk.enable”的以下描述: True(默认):使用磁盘缓存,最大容量为browser.cache.disk.capacity中指定的容量
错误:禁用磁盘缓存(与将browser.cache.disk.capacity设置为0的效果相同)Firefox 48开发工具 仅当“工具箱”打开时,才允许关闭缓存,这非常适合web开发:
- F12
- 齿轮箱在右上角
- 向下滚动顶部高级设置
- 选中“禁用缓存(工具箱打开时)”
有类似的内容,但定位有点变化。首先,这很容易做到,例如,通过PHP强制浏览器更新文件
<script language="javascript" src="js/home.js?id=${pageContext.session.id}"></script>