【问题标题】:Facebook: How can I access data contained in response?Facebook:我如何访问响应中包含的数据?
【发布时间】:2013-05-08 05:31:55
【问题描述】:

请原谅我的初学者身份 :) 我一直在查看图形资源管理器/Facebook Javascript SDK 入门,并开始运行基础知识。

如果我的理解是正确的,这段代码应该向图形发出请求……相当于图形浏览器中的friends > id。首先,这是正确的吗?

FB.api('/me/friends/id', function(response) {
     // Store response or do something else 
});

其次,我不确定如何访问这些数据...我尝试查找有关响应对象的文档,但没有找到任何东西。如果我的第一个假设是正确的,那么返回的数据应该是……

{
  "id": "123456", 
  "friends": {
    "data": [
      {
        "id": "123456"
      }, 
      {
        "id": "123456"
      }, 
      {
        "id": "123456"
      }, 
      {
        "id": "123456"
      }
   ] 
 }

所以,我希望能够通过response.id 等访问这些数据 - 这返回了undefined

我错过了什么?

谢谢。

编辑。

例如:

在一个示例调用中,

    function testAPI() {
        console.log('Welcome!  Fetching your information.... '); 
        FB.api('/me', function(response) {
            console.log('Good to see you, ' + response.name + '.');
        });
    }  

这可以正常工作,并且控制台会记录“很高兴见到你 ShimmerGeek”。

我怎样才能以同样的方式检索朋友 ID?

编辑 2:

FB.api('/me/friends', function(response) {
                    var friend = new Array(); 
                    for(i = 0; i < response.friends.data.length; i++) {
                        friend[i] = response.friends.data[i].id; 
                        alert(friend[i]); 
                    }
                });

我不确定为什么这不起作用。我哪里错了?

【问题讨论】:

  • 它应该返回一个常规的 JSON 字符串...您是否尝试在控制台中输入 response.id

标签: facebook facebook-graph-api facebook-javascript-sdk


【解决方案1】:

https://developers.facebook.com/tools/explorer 上查看 Facebook Developer Graph API 工具。

me/friends/id 的链接返回一个空数据集。但是,me/friends 的链接返回的内容更像您所期望的:https://developers.facebook.com/tools/explorer?method=GET&path=me%2Ffriends

【讨论】:

  • 啊哈!干杯。我点击了旁边的东西(朋友,然后是id),它工作正常,但正如你所说,如果它是在控制台输入的,它似乎没有。
  • 您会注意到,当您单击旁边的内容时,它会自动填充 GET 提交字段。例如,friends -> id 给你[userid]?fields=friends.fields(id)
  • 那我该如何访问数据呢?我尝试通过FB.api('/me/friends', function(response) { var friend = new Array(); for(i = 0; i &lt; response.friends.data.length; i++) { friend[i] = response.friends.data[i].id; alert(friend[i]); } }); 访问它
  • 试试response.data.lengthresponse.data[i]
猜你喜欢
  • 2019-08-07
  • 2022-01-15
  • 1970-01-01
  • 2016-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-21
  • 2018-09-10
相关资源
最近更新 更多