IE11 为 No-Cache 请求返回 304
IE11 returning 304 for No-Cache request
我正在开发一个从 API 获取数据的网络应用程序。 API 在大多数资源上包含缓存 header,通常这会按预期工作。但是,当应用程序通过 POST 修改资源时,PUT、DELETE 必须使同一 URI 的 GET 缓存失效。这在 RFC 7234 4.4
中有描述
在我们的测试中,IE 11 似乎不遵守这一点,并返回带有 304 Not Modified 响应的缓存资源。为了解决这个问题,在状态更改请求之后的下一个 GET 请求中,我尝试添加请求 header Cache-Control: No-Cache, No-Store
我仍然收到 304 未修改缓存响应。
如何让 IE 11 忽略它的缓存并再次访问服务器?这一切都按预期在 Chrome.
中工作
它与我正在使用的相关 fetch
正如我在评论中提到的,你必须尝试这些 headers:
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: 0
我正在开发一个从 API 获取数据的网络应用程序。 API 在大多数资源上包含缓存 header,通常这会按预期工作。但是,当应用程序通过 POST 修改资源时,PUT、DELETE 必须使同一 URI 的 GET 缓存失效。这在 RFC 7234 4.4
中有描述在我们的测试中,IE 11 似乎不遵守这一点,并返回带有 304 Not Modified 响应的缓存资源。为了解决这个问题,在状态更改请求之后的下一个 GET 请求中,我尝试添加请求 header Cache-Control: No-Cache, No-Store
我仍然收到 304 未修改缓存响应。
如何让 IE 11 忽略它的缓存并再次访问服务器?这一切都按预期在 Chrome.
中工作它与我正在使用的相关 fetch
正如我在评论中提到的,你必须尝试这些 headers:
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: 0