2012-04-24 77 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

封面照片也并不总是最近的照片,由于前几天。

相关问题