IE11为No-Cache请求返回304

时间:2017-04-27 11:07:43

标签: javascript internet-explorer-11 http-caching fetch-api

我正在开发一个从API获取数据的网络应用。 API包括大多数资源上的缓存标头,通常这可以按预期工作。但是,当应用程序通过POST,PUT,DELETE修改资源时,必须使相同URI的GET缓存无效。这在RFC 7234 4.4

中有所描述

在我们的测试中,似乎IE 11不尊重它,并且返回带有304 Not Modified响应的缓存资源。为了解决这个问题,在状态更改请求之后的下一个GET请求中,我尝试添加请求标头Cache-Control: No-Cache, No-Store

我仍然收到304 Not Modified缓存响应。

如何让IE 11忽略它的缓存并再次转到服务器?这一切都在Chrome中按预期工作。

我正在使用fetch

这是相关的

1 个答案:

答案 0 :(得分:2)

正如我在评论中提到的,你必须尝试这些标题:

Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: 0