2012-03-02 147 views
3

我試圖檢索Facebook中用戶的所有個人資料圖片。到目前爲止,我發現我必須查看「我/專輯」,我想要的專輯是type: 'profile'中唯一的專輯。我也發現我無法過濾type。所以在我看來,唯一的辦法是檢索所有專輯,然後搜索我想要的專輯。但是,假設我的用戶擁有大量專輯,並且來自Facebook的第一個響應中不包含我想要的專輯。然後我必須再提出一個請求來獲得下一頁。獲取Facebook個人資料圖片專輯

我的問題是:

  • 難道真的沒有辦法在type過濾器?
  • 我可以對個人資料圖片專輯的「哪裏」(頁面明智)做出假設嗎?

目前我們正在檢索所有(最多300張)專輯並在其後查找,但這需要太多時間。因此,我們需要優化這部分問題。對於它的價值,這是一個與考拉處理Facebook交互的軌道3應用程序。

+1

是facebool一個Facebook的程序員? :)我編輯了標題。 – vulkanino 2012-03-02 12:35:19

+0

糟糕。對不起,謝謝。 :) – ksol 2012-03-02 12:36:52

回答

7

您可以使用

https://graph.facebook.com/me/fql?q=select+aid+from+album+where+owner=me()+and+type="profile"&access_token=... 

更新

這將返回僅直接的個人資料圖片:

https://graph.facebook.com/me/fql?q=select+pid,src_small+from+photo+where+aid+in(select+aid+from+album+where+owner=me()+and+type="profile")&access_token=... 
+0

謝謝,它的作品。我不知道爲什麼我在使用'WHERE type ='profile''時出現錯誤,但我早些時候嘗試過.. – ksol 2012-03-02 12:57:18

+0

如果進行其他圖API調用,您可能需要object_id而不是「aid」: SELECT object_id FROM album WHERE owner = me()和type =「profile」 – 2012-05-31 18:46:45

+0

由於某種原因,FQL不適用於我 - 我一直在使用Graph Explorer進行試用。你有可能重新格式化它嗎? – daspianist 2013-08-15 21:18:49

-1

沒有,有沒有辦法專門檢索頭像相冊在Graph API中;但您可以輕鬆獲取當前的個人資料照片,因爲它會在用戶的基本信息中返回。

爲什麼不只是在一次調用中檢索所有專輯名稱(/me/albums?fields=name&limit=500)並在代碼中遍歷它們?它不能花費那麼長時間,可以嗎?

亞歷山大的解決方案也應該工作,我還沒有檢查它,雖然

+0

令我驚訝的是,這個答案的總票數並不是負數...... – 2015-01-20 04:40:45

+0

循環可能非常慢。 – bobo2000 2015-06-05 18:38:37

相關問題