У меня есть следующий код для реализации события, когда пользователь оставляет комментарий.Он срабатывает правильно, но проблема в том, что я понятия не имею, как разобрать объект, который передается в мою функцию обратного вызова.
<script>
window.fbAsyncInit = function () {
FB.init({ appId: '<myAppId>', status: true, cookie: true, xfbml: true });
FB.Event.subscribe('comment.create', function () {
FB.api('/comments/?ids=http://foo.com', function (response) {
console.log(response);
});
});
};
(function () {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
} ());
</script>
Глядя на консольный журнал в firebug, console.log(response)
показывает этот объект:
{
"http://foo.com": {
"data": [
{
"id": "10150090820621770_15631060",
"from": {
"name": "Test User",
"id": "1234455"
},
"message": "testing",
"created_time": "2011-04-18T01:55:38+0000"
},
{
"id": "10150090820621770_15631066",
"from": {
"name": "Test UserToo",
"id": "1149043581"
},
"message": "testing2",
"created_time": "2011-04-18T01:56:12+0000"
}
]
}
}
Однако, если я пытаюсь получить доступ к объекту с помощью response.data[0].from.name
, я получаю undefined
возвращено.Кроме того, все последующие возвращают undefined
также:
response.data
response.data.length
response.data[0]
Я понятия не имею, как разобрать объект для чтения атрибутов.У кого-нибудь есть советы?