如何 select 来自 AJAX 响应的变量
How to select a variable from an AJAX response
我收到来自 AJAX 请求的以下响应(根据 Chrome 控制台):
`XMLHttpRequest {
statusText: "Not Found",
status: 404,
responseURL: "XXX",
response: "{"apiVersion":"2.1","error":{"code":404,"message":…dException","internalReason":"User not found"}]}}", responseType: ""…`}
如何 select 同时获得 statusText
和 internalReason
的值?
当我尝试设置 var msg = response.data.statusText;
时,我得到 Uncaught TypeError: Cannot read property 'statusText' of undefined
编辑:这是上下文中的代码:
$.ajax({
type: "GET",
url: yt_url,
dataType:"json",
success: function(response)
{
// code
}
error: function(response)
{
handleError(response);
}
});
function handleError(response) {
var msg = response.data.statusText;
$('#status').html('An error occurred:' + msg);
}
您有字符串中的数据。如果你想像访问对象一样访问它,那么你必须将它转换为一个。
您需要为数据所采用的任何数据格式查找或编写解析器。
好像是JSON,所以可以用JSON.parse(string)
如果您的 json
是有效对象,那么您应该像这样访问:
var msg = response.statusText // not response.data.statusText as there is not key as data
我收到来自 AJAX 请求的以下响应(根据 Chrome 控制台):
`XMLHttpRequest {
statusText: "Not Found",
status: 404,
responseURL: "XXX",
response: "{"apiVersion":"2.1","error":{"code":404,"message":…dException","internalReason":"User not found"}]}}", responseType: ""…`}
如何 select 同时获得 statusText
和 internalReason
的值?
当我尝试设置 var msg = response.data.statusText;
时,我得到 Uncaught TypeError: Cannot read property 'statusText' of undefined
编辑:这是上下文中的代码:
$.ajax({
type: "GET",
url: yt_url,
dataType:"json",
success: function(response)
{
// code
}
error: function(response)
{
handleError(response);
}
});
function handleError(response) {
var msg = response.data.statusText;
$('#status').html('An error occurred:' + msg);
}
您有字符串中的数据。如果你想像访问对象一样访问它,那么你必须将它转换为一个。
您需要为数据所采用的任何数据格式查找或编写解析器。
好像是JSON,所以可以用JSON.parse(string)
如果您的 json
是有效对象,那么您应该像这样访问:
var msg = response.statusText // not response.data.statusText as there is not key as data