我想确保我通过 AJAX 调用请求的数据是新鲜的而不是缓存的。因此我发送标题Cache-Control: no-cache
但是,Cache-Control: max-age=0
如果用户按 F5,我的 Chrome 版本 33 会覆盖此标头。
例子。将内容test.html
放在您的网络服务器上
<script>
var xhr = new XMLHttpRequest;
xhr.open('GET', 'test.html');
xhr.setRequestHeader('Cache-Control', 'no-cache');
xhr.send();
</script>
在网络选项卡上的 chrome 调试器中,我看到了 test.html AJAX 调用。状态代码 200。现在按 F5 重新加载页面。有 max-age: 0 和状态代码 304 Not Modified。
Firefox 显示了类似的行为。Intead 只是覆盖请求标头,它将其修改为 Cache-Control: no-cache, max-age=0 on F5。
我可以压制这个吗?