我有以下JS代码来获取URL的响应。我的网址没问题,我得到了我想要展示的回复,但我不知道如何以JSON格式显示回复。我会感激任何帮助。
var id = '84337255-f472-4630-986d-487f22009536';
var startDate = '2017-01-01';
var endDate = '2017-03-30';
var url = 'http://34.209.24.195/facturas\?id\=' + id + '\&start\=' + startDate + '\&finish\=' + endDate;
var urlRequestTimeout = setTimeout(function() {
console.log("Failed to load resources");
}, 8000);
$.ajax({
url: url,
dataType: "json",
method: "GET",
success : function(response) {
console.log(response);
clearTimeout(urlRequestTimeout);
}
});
答案 0 :(得分:0)
您可以使用Chrome控制台查看正在打印的响应。没有看到输出是什么,我只能猜测。
我会做这样的事情
let jsonObj = {}; //create empty JSON variable
$.ajax({
url: url,
dataType: "json",
method: "GET",
success : function(response) {
console.log(response);
jsonObj = response.data; //set the variable to the response data
clearTimeout(urlRequestTimeout);
}
});
现在你已经保存了响应,你可以按照自己的意愿去做。如果您想要更具体的答案,则必须发布您的回复输出。
或者,正如其他人所建议的那样。您可以将值转换为JSON字符串,如:
let jsonObj = JSON.stringify(response.data)
console.log(jsonObj);
答案 1 :(得分:0)
使用
console.log(JSON.stringify(response.data));
而不是
console.log(response);
答案 2 :(得分:0)
您收到的是json格式。
我认为有方法可以解决
1. JSON.parse()
2. eval("(" + response + ")")
但第二种方法将在json中运行代码。(不安全)
json format:var data='{
"student" : [
{"name":"A","age":17},
{"name":"B","age":17},
{"name":"C","age":17}
]
}'
eval('(' + data + ')');//jsonString->jsonObject
JSON.parse(data);//jsonString->jsonObject