我正在尝试创建一个 AJAX 调用 - 我想处理响应。
这是我在浏览器的网络控制台中看到的响应:
{
"message": "success",
"file": "dump.xml"
}
这就是我想要做的:
onComplete: function onComplete(data) {
var vm = this;
console.log(data.file);
this.$set('upload', data);
this.$set('filename', file);
this.modal.show();
}
好的。好吧 - 我收到了回复,如果我将 data
写入 console.log,我会收到以下信息:
{"message":"success","file":"dump.xml"}
但如果我尝试这样做:
console.log(data.file);
我变得不确定了。但是为什么?
最佳答案
您正在接收它作为一个字符串。您必须首先通过以下方式将其解析为 JSON:
data = JSON.parse(data);
console.log( data.file )
其他选项:或者您可以根据要求定义它,添加dataType: "json"
这样您将收到json。
喜欢:
$.ajax(
{
type: "POST",
dataType: "json",
url: url,
data: {},
success: function( response ) {}
}
关于javascript - 无法获取 JSON 响应项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47718172/