Javascript 无法分析Ajax调用错误部分中的json对象值
我对rest web API有以下Ajax调用:-Javascript 无法分析Ajax调用错误部分中的json对象值,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我对rest web API有以下Ajax调用:- $.ajax({ url: "/********/getbytitle('****')/items", type: "POST", contentType: "application/json;odata=verbose", data: JSON.stringify(item), headers: { "Accept&q
$.ajax({
url: "/********/getbytitle('****')/items",
type: "POST",
contentType: "application/json;odata=verbose",
data: JSON.stringify(item),
headers: {
"Accept": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: function (data) {
if(data.d != null){
//code goes here..
}
},
error: function (data) {
alert(data.error.message.value);
$("#customloader").hide();
}
});
在error
部分中,我想使用alert(data.error.message.value)捕获错误消息值代码>,但我在浏览器控制台中遇到以下错误:-
data.error.message.value is undefined!!
尽管JSON对象具有以下格式:-
如上图所述,如果用户未经授权,则返回错误。当收到未经授权的请求时,我们的应用程序将显示用户名/密码对话框。。但是我想在username/pasword对话框旁边显示警报,其中包含json错误消息。问题在于错误处理程序的第一个参数是XHR对象,而不是解析的json响应
要按需要执行此操作,您需要自己从XHR获取responseText
,并在尝试读取值
属性之前手动解析它。试试这个:
error: function(xhr) {
var data = JSON.parse(xhr.responseText);
console.log(data.error.message.value);
$("#customloader").hide();
}
没问题,很乐意帮忙