如何从JSON URL获取数据?

时间:2017-11-11 23:49:10

标签: javascript json

https://www.reddit.com/r/aww/top/.json?sort=top&t=day

我有这个来自网站的JSON数据的网址。我想检索一下这个网页上第一个链接图像的网址。

这是我到目前为止的代码

var jsonURL = "https://www.reddit.com/r/aww/top/.json?sort=top&t=day";
loadJSON(jsonURL);

function logData()
{
    console.log(data.children[0].preview.images.source.url);
}

我当前的错误是"未捕获的ReferenceError:未定义loadJSON"我不知道为什么我得到这个错误,因为我在我工作的目录中有p5.js,但我觉得我完全误解了json的语法。任何方向都将不胜感激。

1 个答案:

答案 0 :(得分:0)

如前所述,您没有致电logData。此外,如果您正在调用它,您正在记录的输出看起来不会返回任何结果。

我使用fetch工作,你不需要依赖jQuery。

var jsonURL = "https://www.reddit.com/r/aww/top/.json?sort=top&t=day";
loadJSON(jsonURL);

function logData(data){
  console.log(data.data.children[0].data.preview.images[0].source.url)
}

function loadJSON(url) {
  fetch(url)
  .then(
    function(response) {
      if (response.status !== 200) {
        console.log('Looks like there was a problem. Status Code: ' +
          response.status);
        return;
      }
      response.json().then(function(data) {
        logData(data)
      });
    }
  )
  .catch(function(err) {
    console.log('Fetch Error :-S', err);
  });
}