码迷,mamicode.com
首页 > Web开发 > 详细

Ajax错误 “SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而导致此项操作无法完成” 的归纳总结

时间:2018-04-16 13:11:13      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:tar   $.ajax   body   数据   har   htm   jquery   set   result   

最近在做Asp.net项目的时候,用Ajax访问服务器数据有时候老是莫名其妙的报错:SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而导致此项操作无法完成 。在网上查了查引起这个错误是个非常复杂的问题,也就是说有很多因素会引发这个Ajax错误,最蛋疼的是这个Ajax错误发生后,服务器端不会反回任何状态码和错误消息,所以无法直接跟踪和判断到底是什么原因引发了该错误。这里写一篇文章做一个归纳总结,将已知的错误原因总结出来,如果以后知道更多原因会不断扩充这篇文章。

 

原因一:Ajax的contentType记得要加charset=utf-8,否则大概率会引发Ajax错误:SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而导致此项操作无法完成

如果你在使用Jquery和XMLHttpRequest 等对象做Ajax请求时,设置了Ajax请求的contentType,请记住一定要在contentType后面加上charset=utf-8,否则会大概率引发SCRIPT7002错误。如果使用Jquery的Ajax发送json数据到服务器,那么正确的发送方式如下所示:

技术分享图片
 1 var ajaxData={};
2 ajaxData.Year=2015;
3 ajaxData.Month=11;
4 ajaxData.Meesage="测试信息";
5
6 $.ajax({
7 url: "/Home/GetData",
8 data: JSON.stringify(ajaxData),
9 type: "POST",
10 contentType: "application/json;charset=utf-8", //记住加上charset=utf-8,否则Ajax请求有可能会报SCRIPT7002错误
11 success: function(result) {
12 alert("Request sent successfully!");
13 },
14 error: function(result) {
15 alert(result.status+":"+result.statusText);
16 }
17 });
技术分享图片

 

原因二:IE中Keep-Alive机制引起的错误

 

Ajax错误 “SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而导致此项操作无法完成” 的归纳总结

标签:tar   $.ajax   body   数据   har   htm   jquery   set   result   

原文地址:https://www.cnblogs.com/jpfss/p/8855167.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!