2011-11-23 90 views
1

我想抓住我的朋友喜歡的Facebook頁面。Facebook的page_fan查詢返回不完整的結果

SELECT uid,page_id,type,profile_section,created_time FROM page_fan WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 

我注意到,一些數據從結果集中缺少,所以我查詢了單獨的用戶ID表,如下所示:

SELECT uid,page_id,type,profile_section,created_time FROM page_fan WHERE uid={id1} 
SELECT uid,page_id,type,profile_section,created_time FROM page_fan WHERE uid={id2} 

...

顯然,對於一些朋友ids正在工作,但對於其他一些查詢則返回空結果。

我認爲,也許這些缺少用戶有一些隱私設置,不允許應用程序從他們的帳戶中提取數據。

有什麼想法?

+0

'我想,也許那些失蹤的用戶都不允許應用程序從他們accouns.'提取數據這 – ifaour

回答

1

您在提出此請求時是否使用了有效的訪問令牌?

如果你看一下在page_fan表的文檔也解釋了什麼是需要

https://developers.facebook.com/docs/reference/fql/page_fan/

訪問令牌來閱讀你所需要的page_fan表:

  • 任何有效access_token如果是公開的(任何人都可以在Facebook上看到 )。
  • user_likes權限,如果查詢當前用戶。
  • friends_likes權限,如果查詢用戶的朋友。
+0

你提到沒有提及這些權限鏈接一些隱私設置。也許這在你的帖子後發生了變化。有一個單獨的鏈接,提到訪問page_fan(http://fbdevwiki.com/wiki/FQL:page_fan)你不需要任何access_token或鍵(這是錯誤的),但我的測試顯示,沒有user_likes是必要的對於這個查詢,我急於確定它是否一致。 – user1055761