我在服务器上有一个简单的缓存机制,它可以设置Last-Modified头,也可以响应If-Modified-Since头。响应头的一个示例是:
Date: Tue, 17 Mar 2015 20:40:14 GMT
Last-Modified: Mon, 16 Mar 2015 09:47:28 GMT在我导航到页面一次之后,浏览器在请求中包含和If-Modified-Since头,服务器以304状态正确地响应。
但是,当我使用jQuery执行请求时(对于一个简单的XMLHttpRequest,行为保持不变),If-Modified-Since头不会被发送。
最简单的代码是:
var xhr = new XMLHttpRequest();
xhr.open("get", "http://localhost/some/page.html", true);
xhr.send();这类代码总是生成200个响应,即使它以前是缓存的。我在Firefox 36和Chromium41中观察到了这一点。
为什么If-Modified-Since头没有包含在XMLHttpRequest发起的调用中?
发布于 2015-03-19 15:38:16
似乎这是用户错误,因为我不能再复制它了。
https://stackoverflow.com/questions/29109630
复制相似问题