2014-01-05 119 views
0

我想在我的页面上使用Facebook JS SDK创建一个用户的饲料,但我有问题访问嵌套对象的值。Facebook的饲料 - 的JS SDK

这是我的代码:

FB.api('/me/feed', function(response) { 
     alert(response.data); 
    }); 

这里的警报将返回[object Object]

数据对象是这样的:

{ 
    "data": [ 
    { 
     "message": "Some message", 
     "id": "some ID", 
     "created_time": "2014-01-05T22:46:10+0000" 
    } 
    ], 
    "paging": { 
    "previous": "Link", 
    "next": "Link" 
    } 
} 

我需要访问该对象的message一部分,但我不知道如何。

回答

0

只需访问属性直接

FB.api('/me/feed', function(response) { 
    alert(response.data.message); 
}); 
+0

我试过了,它返回undefined – Geo

+0

@Geo是违背你说什么 - 你所提供的对象显然有一个'消息'属性,你可以使用'.message'或'['message']'来访问。 –

+0

啊,可能有两层'数据'。看到我更新的答案。 –

0

我不得不使用JSON所有

FB.api('/me/feed',{limit:10}, function(response){ 
    var jsonText = JSON.stringify(response.data,["picture"]); 
    alert(jsonText);  
    }); 

后,这将返回数组与“图像”的所有值

这是示例输出

[{"picture":"https://fbcdn-photos-d-a.akamaihd.net"}, 
{"picture":"https://fbcdn-photos-g-a.akamaihd.net"}, 
{"picture":"https://fbexternal-a.akamaihd.net"},{}, 
{"picture":"https://fbcdn-profile-a.akamaihd.net"}] 
0

它看起来像data是单一元素的数组,因此要获得message,你将要使用response.data[0].message

+0

我尝试过,但是没有工作 – Geo