【问题标题】:How do I access this json object inside this api?如何在这个 api 中访问这个 json 对象?
【发布时间】:2018-10-23 08:40:25
【问题描述】:

我正在尝试访问 api 中的项目,以便我可以开始从 json 文件中获取数据,但我似乎无法得到任何工作。我无法记录我试图访问控制台的任何数据。

  $(function() {

  $.ajax({
    type: 'GET',
    url: "xxx",
    dataType: 'json',
    success: function(data) {
      return console.log('success', data);
      return console.log(data[0].id);
    },
    beforeSend: function(xhr, settings) {
      xhr.setRequestHeader('Authorization', 'Bearer ' + 'xxx');
    }
  });
});

【问题讨论】:

  • 看起来有 2 个 data ... 你试过 data[0].data[0].id ... 还是,也提供 JSON
  • 您的变量名为data,它是一个拥有data 属性的对象。试试data.data[0].id
  • 我删除了退货并将其更改为 data.data[0].id;太感谢了!我的控制台实际上说了些什么!哈

标签: javascript jquery api get xmlhttprequest


【解决方案1】:

它不起作用,因为您在第二个 console.log 之前返回。 return 语句用于在该行退出函数并返回该行其余部分的值。您正在返回,然后在返回后尝试做一些实际上从未运行过的事情。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/return

删除返回语句,它应该可以工作。

$.ajax({
    type: 'GET',
    url: "xxx",
    dataType: 'json',
    success: function(data) {
      console.log('success', data);
      console.log(data[0].id);
    },
    beforeSend: function(xhr, settings) {
      xhr.setRequestHeader('Authorization', 'Bearer ' + 'xxx');
    }
});

【讨论】:

  • 天哪,非常感谢。我今天早上花了 4 个小时在谷歌上搜索这个。老实说,如果我能给你买啤酒,我会的。
  • @branhillsdesign 如果这个答案有效,请您接受它让其他人知道
【解决方案2】:

1) 在将 Id 记录到控制台之前返回有问题,因为在记录 Id 之前返回它,return 语句会结束函数执行。所以删除 return 就可以了

2) 你真的不需要 console.log() 一切你可以放一个 'debugger;' 而不是 return,你可以用打开的控制台窗口重新加载页面,它将在调试器处暂停代码执行;,您可以将鼠标悬停在成功函数中接收到的“数据”上,以查看在成功的 AJAX 调用中接收到的所有数据.希望这会有所帮助

【讨论】:

    猜你喜欢
    • 2021-07-05
    • 2014-06-19
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 2016-07-10
    • 2022-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多