Javascript Jquery获取关于XHR错误的数据
如果我发出一个jqueryajax请求,并且请求成功,那么我将返回我的JSON数据。但是,如果我发出一个请求,并且得到的不是200响应代码,那么我就无法在Jquery回调中得到数据。我需要数据,因为它有一个关于数据的描述Javascript Jquery获取关于XHR错误的数据,javascript,jquery,json,xmlhttprequest,Javascript,Jquery,Json,Xmlhttprequest,如果我发出一个jqueryajax请求,并且请求成功,那么我将返回我的JSON数据。但是,如果我发出一个请求,并且得到的不是200响应代码,那么我就无法在Jquery回调中得到数据。我需要数据,因为它有一个关于数据的描述 success: function (data, tst, xhr) { $.log('XHR OK'); }, error: function (xhr, tst, err) { $.log('XHR ERROR ' + XMLHttpRequest.stat
success: function (data, tst, xhr) {
$.log('XHR OK');
},
error: function (xhr, tst, err) {
$.log('XHR ERROR ' + XMLHttpRequest.status);
},
有什么想法吗
谢谢试试这个。它向JSON请求添加了一个错误回调,如下所示:
$.jsonp({
url: "Your URL",
data: {data: "Some Data"},
dataType: 'jsonp',
timeout: 2000,
success: function(data, status) {
// Do something with data here
},
error: function(xhr, text_status){
// Handle the server error
}
});
它使用超时等待服务器来完成此操作。不幸的是,没有其他方法来判断服务器是否使用200响应以外的响应。在:
error: function (xhr, tst, err) {
$.log('XHR ERROR ' + XMLHttpRequest.status);
},
你可以用
error: function (XMLHttpRequest, textStatus, errorThrown) {
$.log('XHR ERROR ' + XMLHttpRequest.status);
return JSON.parse(XMLHttpRequest.responseText);
},
在发生错误时获取JSON响应
XMLHttpRequest.responseText
干杯。你在说什么“数据”?如果存在服务器错误,那么任何“数据”将从何而来(xhr对象中的错误信息除外)?是的,JSON响应如下{'error':'Your account was not found.}您能否更新此答案以包含较新的成功/失败ajax样式?