当前位置: 首页 > 面试题库 >

IE10 / 11 Ajax XHR错误-SCRIPT7002:XMLHttpRequest:网络错误0x2ef3

闽阳州
2023-03-14
问题内容

我已经解决了这个问题几天,并在这个论坛上进行了接触,因为我觉得我已经筋疲力尽了。我在Drupal
7网站上托管了一个表单,需要将表单值提交到外部url。该表单通过jQuery.AJAX通过HTTPS协议使用POST请求

  • 表格可以在Chrome,Firefox和Safari中正常运行
  • 我在IE10 +控制台中收到以下错误(使用IE10 +时,ajax调用总是进入错误功能):

SCRIPT7002:XMLHttpRequest:网络错误0x2ef3,由于错误00002ef3而无法完成操作

我尝试了以下方法:

  • 添加contentType:

    // causes all of the jQuery callbacks to error out
    

    “application/json; charset=utf-8”,

  • 在实际POST之前尝试Ajax GET调用(如另一个SO线程上所建议)

  • 添加header( 'Content-Type: application/json; charset=utf-8' );到请求中

  • crossDomain: true

添加了适当的CORS标头,并将表单代码粘贴在下面:

$.ajax({
    url: "[URL]", //the page to receive the form data  
    crossDomain: true,
    type: "POST",
    data: dataString, //posting to API 
    dataType: "json", //the data type the function should expect back from the server     
    success: function(data) {         
        if (data.response_status == "1") { //error for at least 1 field
             //display error message 
             }
             else { 
             //display thank you label next to input
             }

        } else {
           //All form fields completed successfully! Redirect user to Thank you confirmation page            
        } 
     },
    error: function(jqXHR, textStatus, errorThrown) {
             alert("there is an error!");
             console.log("in error section");
             console.log("jqXHR: " + jqXHR);
             console.log("jqXHR.responseText: " + jqXHR.responseText);
             console.log("textStatus: " + textStatus);
             console.log("errorThrown: " + errorThrown);
             data = $.parseJSON(jqXHR.responseText);
             console.log("parseJSON data: " + data);                           
    }        
    });         
  });
});

任何指导都会有所帮助!谢谢


问题答案:

OP提供了WireShark捕获,该捕获显示服务器使用HTTPS CertificateRequest消息请求证书,然后客户端立即FIN建立连接。

配置服务器不请求客户端证书后,问题消失了。

使用Fiddler也会使问题消失,因为除非您进行配置,否则Fiddler绝不会从浏览器请求客户端证书。

我想知道是否只有受影响的客户端计算机具有匹配的证书,并且/或者withCredentials在这种情况下CORS XHR请求上的标志是否相关。



 类似资料:
  • 问题内容: 在我的网站上,我使用ALK Maps创建了一个地图,显示了点(标记)和道路(路线),所有这些在Firefox和Chrome中都可以正常工作,但是在IE中,我显示了地图和点,但是当我转到我得到错误的道路: “ SCRIPT7002:XMLHttpRequest:网络错误0x80070005,访问被拒绝。” 我找到了一个解决方案:安全区域(“ Internet选项”>“安全性”)设置为“启

  • 问题内容: 在所有其他非IE浏览器中,以下代码片段非常有效: 在两个不同的IE11浏览器(在不同的OS版本上运行)中,我得到两个不同的错误: IE11 Win7:Script7002:XMLHttpRequest:网络错误0x80070005,访问被拒绝。 IE11 Win8:Script7002:XMLHttpRequest:网络错误0x2eff由于错误00002eff而无法完成操作 Googl

  • 问题内容: 我在JavaScript中使用。但是,这给了我一个错误,我不知道我的问题是什么。 我必须解析一个XML文件并将其内容分配给网页-这是我的代码: 我的XML文件在同一目录中。 仅供参考,我通常使用C#或Java进行编程,并且我在Google Chrome上运行我的网站。 问题答案: 因此,这里可能有些错误。 首先,请先阅读如何使用,因为还有第三个可选参数用于指定是否发出异步请求, 默认为

  • 问题内容: 在过去的两个月中,我在Chrome的开发人员控制台上收到以下错误: 症状: 页面未加载。 截断的CSS和JS文件。 页面挂起。 服务器环境: 阿帕奇2.2.22 的PHP 的Ubuntu 这是在我们内部的Apache服务器上发生的。其他人都没有发生这种情况-即 我们的用户都没有遇到此问题-开发团队中的其他人也没有。 其他人正在使用完全相同的Chrome版本访问完全相同的服务器。我还尝试

  • 问题内容: 这是我第一次使用axios,遇到错误。 使用正确的url和参数,当我检查网络请求时,确实可以从服务器中获得正确的答案,但是当我打开控制台时,我看到它没有调用回调,而是捕获了错误。 错误:网络错误堆栈跟踪:createError @ http:// localhost:3000 / static / js / bundle.js:2188:15 handleError @ http://

  • 错误: 我的前端vue应用程序正在和后端正在我正在请求axios从vue文件到后端的get请求。 这就是我的终点 这个错误的原因是什么?