作者:mobiledu2502854077 | 来源:互联网 | 2023-09-04 18:18
此问题与this post非常相似,但特定于清除IE11浏览器中的缓存。
无论我提交新请求时如何清除历史记录/缓存(清除历史记录,Network Tab
> clear cache
,Network tab
> always refresh from server
),此消息Received (from cache)
(This resource was loaded from the cache and it was not affected by network latency
)的响应。
我应该补充一点,该路由应该是POST请求,但它会作为GET请求保存在浏览器中。这仅在IE11浏览器中发生。 req / res标头丢失。
它实际上是作为POST在网络上正确发出请求的,但这是我尝试过的〜100次。我不知道为什么它适用于这两个特定实例。但是每个后续请求都会被缓存拦截,并返回200 GET(不包含标头)。在Chrome / Firefox中,这始终可以正常工作(没有缓存,网络响应异常)。
所以这实际上是两个独立的问题。 1. POST被保存为IE11的GET,并且2.清除IE11的请求缓存不起作用。
我想避免添加headers to solve this issue,主要是想找到一种清除IE11浏览器缓存的方法,因为看起来初始的POST请求有效,只是随后的任何请求都使用保存的缓存(如GET(由于某种原因)。也就是说,找到并修复POST为什么作为GET进行缓存的原因也将为我提供前进的方向。
使用whatwg-fetch
来填充IE,并将babel-polyfill用于Promises。
**尝试通过开发者控制台发送请求。 chrome / IE浏览器之间的结果相同(在Chrome中工作,随后在IE SCRIPT7002: XMLHttpRequest: Network Error 0x2ef3,Could not complete the operation due to error 00002ef3.
中出现错误)
这是我正在发出的请求:
var optiOns= {
"body": "{\"email\":\"myemail@myemail.com\",\"pass\":\"mypassword\"}","credentials": "include","headers": {
"Content-Type": "application/json; charset=utf-8"
},"method": "POST","mode": "cors"
}
fetch("https://locally-running-host:9876/some-route/logmein",options).then(function(response) { return response.json() }).then(function(myJson) { console.log(myJson)})
跟进-已解决-这是一个证书问题,主要是由于我的工作站缺少权限以及我工作的限制性网络引起的。两者都通过仅阻塞权限并按@ deepak-msft
重新设置来解决
您是否尝试使用IE 11在其他任何计算机上检查此问题?如果不是,则可以检查以确认此问题是否与特定计算机有关。
如果它在装有IE 11的另一台计算机上正常运行,那么您可以尝试重置IE浏览器。检查您是否正在使用IE浏览器的最新更新。
要重置IE浏览器,可以转到Internet选项->高级->重置IE。