gpt4 book ai didi

javascript - IE10/IE11 清除缓存后中止 Post Ajax 请求,错误为 "Network Error 0x2ef3"

转载 作者:IT王子 更新时间:2023-10-29 03:22:22 31 4
gpt4 key购买 nike

SCRIPT7002: XMLHttpRequest: Network Error 0x2ef3, Could not complete the operation due to error 00002ef3

目前没有有效的解决方案。

Update: Noticed on IE11 also.

经过越来越多的调查,我得出了这样的结果:

  1. 问题是我的应用程序特有的,它不会发生在 facebook 上。
  2. 这个问题与每个主机的最大请求数无关(我做了一个淹没服务器的示例页面,IE10 能够同时处理多达 8-10 个请求,在我的应用程序中我也尝试这样做ajax 连续请求,它也失败了)。
  3. 此问题特定于 POST 请求。
  4. 问题不是特定于所使用的 JS 库(我尝试从控制台直接使用 XMLHttpRequest 但它也失败了)。
  5. 失败发生在 xhr.send()、xhr.readyState = 4 和 xhr.onreadystatechange 触发之后。
  6. 失败与任何内容类型、正确的请求或服务器配置无关。它只是客户端,请求虚拟页面将失败,最低限度的 XHR,只有 xhr.open 和 xhr.send。
  7. 主要发生在清除浏览器缓存之后。
  8. 在 POST 之前执行 GET 请求并不能解决这个问题。

我的问题是:

  1. 浏览器缓存如何影响 POST ajax 请求?
  2. 是否有任何机构与 IE 开发人员联系,告诉我们这个错误“网络错误 0x2ef3”映射到什么?

目前,我正在执行的临时解决方案是,如果 HTTP 状态代码为零,则最多重试 3 次。但它非常丑陋,因为即使上传请求有时也会失败,并且对于重试的请求会变慢,有时会额外花费 100 毫秒。

重现步骤:

  1. 确保禁用 fiddler 或代理。
  2. http://ie10.laiths.name/#!login
  3. 打开 IE10 控制台,删除浏览器缓存。
  4. 试试这个无效的登录:random@rand.com/random
  5. 3-4 次(清除缓存/无效登录)后,您将看到此错误:SCRIPT7002:XMLHttpRequest:网络错误 0x2ef3,由于错误 00002ef3,无法完成操作。

我的 IE 版本:

  • Win7 IE10 版本:10.0.9200.16618
  • 更新版本:10.0.6 (KB2838727)

如果浏览器是IE10,我现在通过最多重试3次来解决它 && Request is POST && HTTP status code is 0

如果有人可以帮助我删除我丑陋的解决方案,我将不胜感激,因为使用这样的解决方案,即使请求发送到服务器并且它返回 0,我也会重试(我试图通过测量之间的时间来避免这种情况xhr.send 及其回调,但它不可靠),如果 IE10 在 comptMode 中怎么办,如果 IE11 有同样的问题怎么办,加上那个性能,我的机器在每次重试之间需要大约 170 毫秒。

最佳答案

这可能是由于安全证书问题而发生的。如果清除缓存,则会丢失部分(如果不是全部)证书信息。

您可以在 http://www.jonnyreeves.co.uk/2013/making-xhr-request-to-https-domains-with-winjs/ 中找到更多信息(和解决方法)

基本上它说您必须在 POST 请求之前执行 GET 才能更新证书信息。

关于javascript - IE10/IE11 清除缓存后中止 Post Ajax 请求,错误为 "Network Error 0x2ef3",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16312938/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com