【发布时间】:2016-06-29 20:26:07
【问题描述】:
当请求具有相同路径但不同标头时,HTTP 代理应如何决定使用缓存响应?
以这个 HTTP 请求/响应为例:
GET /resource HTTP/1.1
Host: example.org
X-Filter: foo=bar
HTTP/1.1 200 OK
Cache-Control: max-age=3600
Content-Type: application/json
Content-Length: 13
{"foo":"bar"}
代理是否应该认为响应对于具有不同 X-Filter 标头的第二个请求有效?例如:
GET /resource HTTP/1.1
Host: example.org
X-Filter: foo=baz
那么在第一个请求后的一个小时内,代理应该请求一个新的响应,因为请求标头不同,还是应该使用第一个请求的缓存响应,忽略标头?
我之所以这么问,是因为我注意到 Google Chrome 发出了一个新请求,而 Microsoft Edge 则使用缓存的响应。
【问题讨论】:
标签: google-chrome http caching microsoft-edge