谷歌浏览器;刷新不发送If-Modified-Since标头
-
05-07-2019 - |
题
由于我目前正在开发一个网站,它必须能够在很多压力下完美地执行或从自动化测试场景切换,我会尝试简单的按住-F5-for-several -seconds-in-my-favorite-browser,在这里我发现谷歌Chrome有一个奇怪的观察结果:
如果您执行上述操作,Chrome会跳过发送If-Modified-Since标头,并强制网络服务器获取您要显示的页面,从而产生状态代码200而不是预期的304。
在IE8(也可能是早期版本)中,此问题不存在。
试试这个简单的页面: http://www.w3.org/ Protocols / rfc2616 / rfc2616-sec10.html ,然后与Fiddler密切调查页面;奇怪?
我的问题是;这是设计,还是Google的错误?
解决方案
这可能是一个设计问题。刷新时,浏览器通常会发送不同的请求;例如,尝试在IE中按CTRL + F5,您应该看到IE然后发出无条件的HTTP请求。
您是否在回复中发送了正确的HTTP缓存指令,以便无需验证其新鲜度? http://www.fiddler2.com/redir/?id=httpperf
其他提示
你在做Shift-F5还是Ctrl-F5?如果是这样的话,那么就是设计。否则它很可能是一个错误。
不隶属于 StackOverflow