Ctrl + Refresh和Ctrl + Shift + Refresh之间的区别?


9

我了解Ctrl+刷新无需阅读缓存即可从浏览器获取新鲜内容。那Ctrl+ Shift+刷新是干什么的呢?

Ctrl +刷新请求标头是这样的:

Cache-Control : max-age=0

用于Ctrl+ Shift+刷新

Pragma : no-cache <br>
Cache-Control : no-cache

真正的区别是什么?


4
你使用的是什么浏览器?按Ctrl + Shift + F5无助于双方Firefox 3.5或IE 6

2
我一直以为CTRL + SHIFT + REFRESH是个told头的程序员告诉他们的客户...
2009年

@ user2980好,你错了:)
RomanSt 2011年

Answers:


12

两者都与本地计算机上的浏览器相同。您提到的标题是唯一的区别。

Ctrl + Refresh标头意味着沿途的所有缓存服务器都应返回页面的新副本。

Ctrl + Shift + Refresh标头表示沿途的所有缓存服务器均应返回该页面的新副本,并且也不应为将来的任何请求而缓存该页面。换句话说,下次请求该页面时,它应该使用该页面的上一个缓存或请求一个新的副本,但不应使用该页面。

语法:no-cache是​​Cache-Control:no-cache的HTTP 1.0版本。没有等效于Cache-Control的HTTP 1.0:max-age = 0。

RFC2616第14节第9小节具有相关信息:w3c.org:RFC2616第14.9.1节


1

还有另一个区别,那就是很大的区别。

当您按Ctrl + Refresh时,对于每个具有Last-ModifiedETag标题的缓存对象,浏览器都会发出带有If-Modified-SinceIf-None-Match标题的请求。然后,服务器可以选择以进行响应304 Not Modified,而无需重新发送任何数据(假设数据实际上未修改)。

当您按Ctrl + Shift + Refresh时,浏览器将不会发出此类条件If-*标题,服务器别无选择,只能再次发送数据。

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.