Facebook の fql.multiquery メソッドに戸惑っています。
投稿のすべてのコメントを取得しようとしています。次に、各コメントのユーザー情報も取得しようとしています。コメントは問題なく取得できますが、ユーザーの取得に問題があります。
現在、私は以下を使用しています:
FB.api({
method: 'fql.multiquery',
queries: {
query1: 'SELECT post_fbid, fromid, text, time FROM comment WHERE post_id="'+postID +'"',
query2: 'SELECT id, name, url, pic FROM profile WHERE id IN (SELECT fromid FROM #query1)'
}
},
function(response) {
}
})
これにより、次の応答が得られます。
[
{
"name": "query1",
"fql_result_set": [
{
"post_fbid": "xxxxx",
"fromid": user1id,
"text": "Here's a comment",
"time": 1308579931
},
{
"post_fbid": "xxxxx",
"fromid": user2id,
"text": "Another comment",
"time": 1308580031
}
]
},
{
"name": "query2",
"fql_result_set": [
{
"id": user1id,
"name": "User 1 name",
"url": "User 1 url",
"pic": "User 1 pic"
},
{
"id": user2id,
"name": "User 2 name",
"url": "User 2 url",
"pic": "User 2 pic"
}
]
}
]
問題は、これらを一致させる方法がわからないことです。だから私はコメントをループしていて、それぞれのテキストの横にユーザーの名前を付けて印刷したいと思っています。それ、どうやったら出来るの?
または、これを行うより良い方法はありますか?