Chrome中的“正常重载”,“硬重载”和“空缓存和硬重载”有什么区别?


341

我最近在Chrome中发现了此新功能:

重新加载选项

我可以弄清楚选项1和选项3之间的区别,而选项2可能介于两者之间,但是我在任何地方都找不到更精确的信息。

有人知道这三个选项的确切行为吗?


17
您能解释一下“此功能”吗?具体来说:您如何访问它?我尝试了各种右键单击,控制单击...,但没有得到。这是什么版本?
Joachim Sauer

83
@JoachimSauer哈哈,这是我的小秘密...严重地,它非常隐蔽:开发人员控制台处于活动状态时, 必须按下刷新按钮而不能立即释放它,samuelrossille.com/home/blog-chrome-reload-options.html
Samuel Rossille

11
此外,通过将出现右键单击重新加载图标(而Devtools是打开的)
科斯塔

7
这对OSX Chrome有用吗?我似乎无法通过开发工具打开它,并右键单击/单击并按住
nitsujri 2014年

6
我刚刚发现在2016年这些功能意外...
埃德温伟业

Answers:


438

正常装弹

和按一样F5。这将使用缓存,但会在页面加载期间重新验证所有内容,以查找“ 304 Not Modified”响应。如果浏览器可以避免重新下载缓存的JavaScript文件,图像,文本文件等,那么它将进行。


硬装

发出请求时,请勿在缓存中使用任何内容。(等于SHIFT+ F5无需打开开发者控制台)强制浏览器重新下载每个JavaScript文件,图像,文本文件等。


空缓存和硬重装

显然,如果缓存为空,则必须进行硬重装。这将再次迫使浏览器重新下载所有内容。但是,如果页面通过JavaScript在页面加载之后进行了其他事后下载,那么这些下载可能仍会使用缓存,这在清空缓存有帮助的地方,因为这可以确保即使这些都不会使用缓存的文件。


注意:仅当开发人员工具打开时,此功能才可用。


48
有谁知道第三种选择是否只是清空当前站点的缓存,而不是清空整个缓存?
Grinn

10
@Grinn:实际上,现在我想到了,可能是整个缓存。该功能的目的是清除事后下载,这些下载不仅限于一个“站点”。
Andrew Rasmussen

13
我不清楚什么被认为是"after-the-fact download via Javascript"?有人可以提供一个具体的例子吗?
2014年

4
@Costa您可以下载DOM中最初未指定的内容。例如,通过向DOM中添加新的<script>标记,或使用RequireJS等。任何基于AMD的库(例如RequireJS)基本上都会延迟加载其脚本。在这种情况下,您必须清空缓存以确保实际上所有内容都会进行硬重载。
米2014年

16
应该注意的是,这在开发者工具处于打开状态(F12)时才有效。如果此设置可以始终可用,而无论开发者工具是否处于打开状态,那都很好。
scunliffe

4

这在Mac OS X中也适用。打开开发人员工具,然后在重新加载按钮上,或者1.二次单击(右手鼠标右键单击),或者2.长按(也就是长按)以查看菜单。

除了此答案外,硬重载通常还会导致代理,内容交付网络和其他远程缓存被刷新。

在此处输入图片说明


“硬重装通常会导致代理,内容交付网络和其他远程缓存被刷新。” →您可以备份吗?您是否有任何引文解释为什么会这样?我希望硬重装仅重装所有本地缓存​​,并且对远程服务器没有其他影响。
丹尼尔森·萨玛

我认为浏览器会发送Cache-Control: no-cache标题。squid-web-proxy-cache.1019090.n4.nabble.com/…是您的吗?
dcorking

1
我做了一些测试...要去URL或使用正常刷新发送三级缓存相关的头:Cache-Control: max-age=0If-Modified-SinceIf-None-Match。但是,在进行硬重载(有或没有清空缓存)时,仅发送了2个与缓存相关的标头:Cache-Control: no-cachePragma: no-cache。因此,是的,浏览器确实发送了一个标头,要求服务器提供新版本;然后由服务器(包括代理服务器)基于此更改行为。
DenilsonSáMaia

大!您可以将其编辑为我的答案,也可以编写自己的答案。@DenilsonSáMaia–
6

0

通过以下方法,您可以仅清除故障URL的缓存。当我停留在http到https重定向缓存中时,它对我有所帮助。

  1. 在我使用的Windows中,打开Chrome开发人员工具 F12
  2. 校验 Preserve log重定向前保存日志
  3. 右键单击重定向的URL,然后 Clear browser cache

这将仅清除有问题的缓存,而不会影响正常的缓存。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.