$.ajax({
type : "post",
url : rootPath + "/pay/unifiedOrder",
dataType : "json",
contentType:"application/json",
data : JSON.stringify(_params),
success : function(result) {
alert(0);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
现在弹出200 和 parseerror,改动之后的代码样子如下:
$.ajax({
type : "post",
url : rootPath + "/pay/unifiedOrder",
dataType : "text",
contentType:"application/json",
data : JSON.stringify(_params),
success : function(result) {
alert(0);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
原因是返回的数据不符合json格式,将dataType:“json”改成“text”,错误消失,进入success函数。
之前调试还出现400错误,如下代码所示,原因是data数据需要传入JSON.stringify 做字符串处理。
$.ajax({
type : "POST",
url : rootPath + "/pay/unifiedOrder",
dataType : "text",
contentType:"application/json",
data : _params,
success : function(result) {
alert(0);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
最早调试时是报415错误,如下代码所示,原因是未加contentType:"application/json"
$.ajax({
type : "POST",
url : rootPath + "/pay/unifiedOrder",
dataType : "json",
data : _params,
success : function(result) {
alert(0);
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});