如果我发出 XMLHttpRequest 并且浏览器缓存响应,它是否也会缓存 HTTP 响应 header ?也就是说,下次我发出相同的请求时,我是否会从 response.getResponseHeader
返回相同的值?
这取决于浏览器吗?
最佳答案
我敢肯定,至少主流浏览器不会尝试缓存 header 。但是,如果您想完全阻止缓存,您可能需要发送特殊的 header 。如果您想快速测试缓存行为,这里有一个页面:
http://www.mnot.net/javascript/xmlhttprequest/cache.html
如果您想查看实际发生的情况,我建议您使用 Wireshark 等数据包嗅探器并亲自查看。我可以想象浏览器至少对 XmlHttpRequest 执行 HEAD 请求,即使它为您提供了缓存的正文,但我可能是错的。
关于ajax - XMLHttpRequests 是否缓存响应 header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5924911/