Chrome 是否有与 Firefox 的 Ctrl+F5 刷新功能相同的功能?我似乎找不到。
我昨晚更改了我的 Gravatar,在按 Ctrl+F5 刷新后,我可以在 Firefox 中看到新的 Gravatar,但 Chrome 似乎顽固地保留了旧的 Gravatar。我想我可以手动清除缓存,但如果有键盘命令可以执行此操作,我想知道它是什么(因为这对 Web 开发也很有帮助)。
答案1
答案2
答案3
在 Mac 上,它是 Shift+Command+R,或者按住 Shift 并单击重新加载按钮(而不是 Command+R 或常规刷新的正常单击)。
更多细节:
对于 Shift+Command+R,缓存会被忽略,并且资源请求会像不存在缓存一样。
对于 Command+R,Chrome 将向网络服务器发出If-Modified-Since
或请求,Etag
即使对于实际缓存的内容。对于大多数(如果不是全部)内容,服务器应该响应304 Not Modified
。对于大多数(如果不是全部)现代浏览器来说都是如此。
强制依赖缓存的唯一方法(浏览器甚至不需要询问可能的更改)似乎是单击网页上的链接,或按照书签链接,或进入 URL 地址栏并在那里按回车键(Command+L,回车)。
然而:Chrome 中一个长期存在的已知问题,Chrome 强制刷新不会忽略缓存(以及最近重新加载/刷新不刷新)或者实际上是 WebKit 的一个功能,即使重新加载包含的文档,动态插入的子资源也不会重新验证,使得 Chrome 在使用上述方法时不会清除所有相关缓存。一名 Chromium 开发人员解释:
开发人员工具的网络选项卡显示了加载的所有资源的瀑布图。右侧有两条垂直线……其中一条在悬停时标记为“加载事件已触发”。此后加载的任何内容都不是页面的正式组成部分(页面可以连续数小时发出请求)[...] 因此它不会通过任何组合的 f5 进行“刷新”。这是设计使然。
[...]
缓存[任何资源的“Load 事件触发”行之前和之后]由响应的 HTTP 标头决定,而不是由发出请求的时间决定。
Chrome DevTools 的“禁用缓存”会使磁盘缓存无效(非常适合开发!),但是...仅当 devtools 可见时才有效。
答案4
这个问题有点老了,但在最新版本的 Chrome 中
- 打开
Developer tools
使用F12或Ctrl++ShiftI - 右键单击“刷新”按钮,然后选择清空缓存并硬重新加载
这将绕过缓存并完全重新加载页面。
文档上说的是Ctrl+F5或Shift+F5但不幸的是,到今天为止,这个错误仍然没有解决 :-(