2

Chrome的缓存是否支持HTTP Vary标头?对于特定的url请求,服务器响应两个不同的html文件,具体取决于它是否是ajax请求。所以我将Vary头添加到X-Requested-With。我期待Chrome能够记录两个缓存条目,但似乎并非如此。我总是得到我提出的第一个请求的缓存命中。这是正常的行为?Chrome是否支持HTTP Vary标头

谢谢。

+2

你能告诉我们具体要求的例子吗?您可以使用Chrome开发工具[导出网络数据](https://developers.google.com/web/tools/chrome-devtools/network-performance/reference#export_requests_data)。 –

+0

你可以向我们展示两个请求的请求/响应头(带和不带'X-Request-With'头)吗? – idbehold

回答

1

备案。我一直无法在Chrome中使用X-Requested-With的HTTP Vary标头。 Chrome在缓存时并未考虑HTTP Vary标头。所以缓存命中总是返回相同的内容。

作为解决方法,我只在使用ajax执行请求时添加了一个问题字符串(如?ajax = 1)。

例: http://localhost/myrequest.php http://localhost/myrequest.php?ajax=1

这样的Chrome存储二级缓存条目,一个使用Ajax和一个没有。