2012-09-05 93 views
3

我想要獲得我的朋友使用某個app_id所有發佈的列表。我嘗試了多查詢FQL是這樣的:Facebook的FQL來獲得朋友所做的所有帖子和使用應用程序

{ 
"friends":"SELECT uid2 FROM friend WHERE uid1 = MY_USER_ID", 
"posts":"SELECT post_id FROM stream WHERE source_id IN (SELECT uid2 FROM #friends) AND app_id= APP_ID" 
} 

這FQL不返回任何東西,但我的一個朋友使用的應用程序發了一個帖子(我覈實,第一FQL,#friends,不會返回朋友誰發了帖子)。我用一個只有一個朋友的測試帳戶試用過它,它工作。

有什麼理由可能無法與很多朋友一起使用嗎?

回答

2

什麼將它們合併爲1個嵌套查詢 -

SELECT post_id FROM stream WHERE source_id IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND app_id = APP_ID 

如果不工作,以及,它可能與你的朋友是如何配置的隱私設置崗位/活動,可以是由他們的朋友的應用程序使用。

+0

謝謝,但這也行不通。另外我確認了我的應用程序的隱私設置是正確的。我嘗試了以下FQL:SELECT uid,status_id,message,source,time FROM status WHERE uid IN(SELECT uid2 FROM friend WHERE uid1 = me())AND source = APP_ID LIMIT 1000。此查詢只會返回我的朋友發佈的應用程序相對較新的帖子,即使我使用時間字段,也不會返回舊帖子。有趣的是,使用uid = m()執行相同的查詢,即得到我的帖子,即使它們是舊的,也能正確返回數據。 –

相關問題