私はこれを試してみて、私が信じているのと同じ問題に遭遇しましたが、おそらくもう少し説明するのに役立つでしょう.
Facebook の wiki トークページに投稿する価値があるかもしれません。私がここで何かを見逃していない限り、Facebook の誰かがそれに光を当てることができるかどうかを確認してください。
USER_IDをどこに置いても、検索するユーザーを入力する必要があり、F_ID1、F_ID2は友達です...
FQL #1: 動作するはずです (理論上)
- まず、すべての友達のリストを取得します
- 次に、次のクエリの IN 句でそのリストを使用します
- USER_ID によって作成された投稿のみを除外します
- メッセージが NULL でないことを確認してください
FQL #1: 投稿が返されない
{
"friends":"SELECT uid2 FROM friend WHERE uid1= USER_ID ",
"postsonfriendswall":"SELECT source_id, actor_id, target_id, message FROM stream WHERE source_id IN (SELECT uid2 FROM #friends) AND message != '' AND actor_id = USER_ID "
}
FQL #2: 投稿が返される
しかし奇妙なことに、友達を 1 人 (F_ID1) だけに制限すると、その友達のウォールに投稿された USER_ID が戻ってきます!
{
"friends":"SELECT uid2 FROM friend WHERE uid1= USER_ID ",
"postsonfriendswall":"SELECT source_id, actor_id, target_id, message FROM stream WHERE source_id IN (SELECT uid2 FROM #friends WHERE uid2 = F_ID1) AND message != '' AND actor_id = USER_ID "
}
FQL #3: 投稿が返されない
それでも、別の友人を IN F_ID1 & F_ID2 に追加しようとします...結果は再びありません...
{
"friends":"SELECT uid2 FROM friend WHERE uid1= USER_ID ",
"postsonfriendswall":"SELECT source_id, actor_id, target_id, message FROM stream WHERE source_id IN (F_ID1,F_ID2) AND message != '' AND actor_id = USER_ID "
}