从URL获取响应

时间:2017-08-05 05:08:37

标签: javascript json ajax

我有以下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);
  }
});

3 个答案:

答案 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