2012-04-24 8 views
3

有一個用戶ID XUID,我知道我能得到一個資料圖片這樣:如何從用戶獲取實際大小的配置文件圖片?

http://graph.facebook.com/xUID/picture?type=large

的問題是,畫面返回來自該網址是不是真正的大小(它大約200像素寬)。

我需要獲取該用戶圖片,但實際大小。

什麼我目前做的是:

1.獲取用戶的相冊

https://graph.facebook.com/me/albums?access_token=xToken

2.迭代上,而且越來越有型的專輯= 「個人資料」。

3.該相冊ID(xAID)我可以構建一個FQL查詢:

SELECT pid, object_id, src_big FROM photo WHERE album_object_id = xAID 

4和獲取個人資料圖片在那裏。

5.我需要迭代並查找用戶上傳的lastone。

因此,這個過程是複雜和耗時的。有沒有更好/更簡單/更快捷的方法來實現這一點?

非常感謝!

回答

0

好吧,只是這樣做的問題說。瀏覽相冊,並從那裏獲取第一張個人資料照片。

Julio的答案不起作用,因爲它不可能在WHERE子句中包含「type」,因爲它不是可索引列。

-1

獲取cover_object_id:

FQL Q = SELECT cover_object_id,類型從相冊WHERE所有者= 「用戶id」 和type = 「輪廓」

獲取src_big:

FQL Q = SELECT PID ,的object_id,src_big FROM相片WHERE

IMG SRC 「上面獲得蓋對象ID」 的object_id =

= 「上面得到src_big」 這有助於在一些事情?

+0

你不能把「type」放在哪裏,因爲它不是一個可轉位的列。 – santiagobasulto 2012-05-05 12:25:55

1

您需要執行只有一個FQL查詢:

SELECT pid, object_id, src_big 
FROM photo 
WHERE object_id IN 
    (SELECT cover_object_id 
    FROM album 
    WHERE owner=me() AND type="profile") 

src_big將包含鏈接配置文件原始來源。 如果您需要獲取特定用戶的個人資料照片,請使用特定用戶ID更改me()

9
+0

在請求之前,您如何知道圖片的實際尺寸? – santiagobasulto 2012-10-11 03:38:44

+0

我相信720x720是目前最大的。如果您想事先知道尺寸,可以這樣做:http://developers.facebook.com/tools/explorer/?method=GET&path=me%3Ffields%3Dpicture.width%28162%29.height%28159% 29並指定你想要的最小尺寸。 – 2012-10-11 08:22:24

+0

謝謝你幾天前一直在尋找這個 – 2015-09-22 20:02:11

0

封面照片也並不總是最近的照片,由於前幾天。

相關問題