ajax一直报错误方法,关于ajax请求一直进error的坑

测试环境发现了一个bug,接口在请求成功之后依然会弹出error()方法中的消息,网上试了各种方法比如去掉dataType,打印error参数结果都不好使。

最后发现ajax请求设置了async: false同步属性,去掉这个参数就好了,代码如下

$.ajax({

type: "post", // 请求方式

url: "",

data: JSON.stringify({"phone": username, "password": password, "parentId": "", "code": checkcode, "registerName": name}),

//async: false, // 是否异步注释掉这行代码为了接口请求一直进error的问题

timeout: 20000, // 超时时间:3秒

dataType: "json",

contentType: "application/json; charset=utf-8",

// 请求成功后的回调函数 data为json格式

success: function (data) {

try {

dataObj = eval("(" + data + ")");//转换为json对象

} catch (e) {

dataObj = data;

}

if (dataObj.status == "200") {

$.ajax({

type: "post",

url: "",

data: JSON.stringify({"phone": username, "password": password, "userId": ""}),

//async: false, // 是否异步

timeout: 20000, // 超时时间:3秒

dataType: "json",

contentType: "application/json; charset=utf-8",

success: function (data) {

try {

dataObj = eval("(" + data + ")");//转换为json对象

} catch (e) {

dataObj = data;

}

if (dataObj.status == "200") {

$("#circlecon").hide();

var userId = dataObj.body.id;

var token = dataObj.body.token;

$.cookie("userId", userId);

name = encodeURIComponent(name);

var returnHref = encodeURIComponent("");

// 修改注册页面跳转路径

window.location.href = encodeURI("/html5/loginNew/authentication.jsp?userId=" + userId + "&activityId=&name=" + name + "&isReg=" + isReg + "&activityType=" + activityType+"&returnHref="+returnHref+"&token="+token);//跳转认证页面

}

if (dataObj.status == "500") {

$("#circlecon").hide();

//$("#login").attr("href", "javascript:login()");

$("#logmsg").html(dataObj.message);

$("#logmsg").slideDown();

}

},

error: function () {

// ajax请求出错执行的内容

$("#circlecon").hide();

alert('请求超时,请稍后重试!')

}

});

}

if (dataObj.status == "500") {

$("#circlecon").hide();

$("#regMsg").html(dataObj.message);

$("#regMsg").slideDown();

}

},

// 请求出错的处理

error: function () {

$("#circlecon").hide();

alert('请求超时,请稍后重试!')

}

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值