我使用 localhost 进行开发;我直接包含来自 CDN 的 jquery。
似乎按“Ctrl + R”会强制页面重新加载,包括从CDN重新下载jquery。
我想问是否有可能..当我刷新时,我保留了来自CDN的jquery的缓存,但清除了我的localhost的缓存?
注意:我知道我能做的一件事就是在本地托管 jquery 文件;我只是想看看是否有办法绕过它。
您当然可以阻止所有文件命中缓存,但这是一个全有或全无的设置。您无法决定哪些文件从缓存中清除以及哪些文件保留在缓存中。
在开发过程中,由于您使用的是 Chrome,我建议启用“禁用缓存(当 DevTools 打开时)”的设置:
如果您像我一样,每次打开 DevTools 面板时都会禁用缓存。
您可以做的另一件事是指示您的服务器完全绕过所有资源的缓存。由于 jQuery 来自 CDN,因此此无缓存设置不适用于它。要禁用资源缓存,您可以包含以下响应标头:
Cache-Control:no-cache, no-store
在浏览器中,使用此刷新页面:Ctrl+Shift+R
这将忽略缓存(而 Ctrl+r 将使用缓存)。
yw:)
在 linux/windows 上按 Ctrl+Shift+i 或在 Mac 上按 Option+Command+j 打开开发者工具,然后转到
network
选项卡,然后单击 Disable cache
如果您使用 Apache,您可以通过将 .htaccess 文件放入您的 htdocs 目录(或您要禁用缓存的目录)中来禁用服务器(本地主机)上的缓存,其中包含以下内容:
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>
我使用这个 chrome 扩展。请注意,您必须首先进入扩展选项并添加您想要禁用缓存的网站的 URL。
扩展链接 - https://chrome.google.com/webstore/detail/no-cache/ogbfmfambmmhfdpfokohebghmcdbodbh
您可以按 Ctrl+Shift+R 进行硬重新加载,这将在没有缓存的情况下重新加载。
或者您可以在隐身模式下打开 Chrome 选项卡 Ctrl + Shift + N