获取用户照片的个人资料照片的大小

问题描述:

我正在使用C#开发网站Facebook应用程序。我可以用得到的信息:获取用户照片的个人资料照片的大小

FacebookClient FBApp = new FacebookClient(getAccessToken); 
dynamic user = FBApp.Get("/me"); 

,我可以得到一个用户的好友:

dynamic friends = FBApp.Get("/me/friends"); 

这一切并不包含对照片的任何链接。我可以使用链接https://graph.facebook.com/ * [user_id] * /图片获取用户照片。

但是这显示了一个非常小的照片...我怎样才能得到照片的大小类似于个人资料照片的大小?

为了得到一个特定大小的用户配置文件图片,来电

https://graph.facebook.com/USER_ID/picture?type=SIZE 

,其中大小应与一个关键词被替换

square 
small 
normal 
large 

取决于你想要的大小。

此调用将返回一个URL到一个单一的图像,其大小根据您选择的类型参数。

例如:

https://graph.facebook.com/USER_ID/picture?type=large 

返回一个URL到大版本的图像。

+0

如果使用https://graph.facebook.com/USER_ID/picture&type=SIZE然后,它会返回一个错误信息: - { “错误”:{ “消息”:“未知的路径组件:/picture&type = large“, ”ty pe“:”OAuthException“, ”code“:2500 } }。你必须使用https://graph.facebook.com/USER_ID/picture?type=SIZE – 2013-04-09 10:54:34

+0

@JayHardia谢谢,我已经纠正了答案中的错误。 – 2013-04-09 21:57:37

尝试FQL:

SELECT pic_square FROM user WHERE uid IN(SELECT uid2 FROM friend WHERE uid1 = me())

...其中pic_square可以是pic_small之一,pic_bigpic_squarepic

这会给你相应的用户好友的个人资料图片的网址在给定的大小。

如:

https://developers.facebook.com/tools/explorer/?method=GET&path=fql%3Fq%3DSELECT%20pic_square%20FROM%20user%20WHERE%20uid%20IN%28SELECT%20uid2%20FROM%20friend%20WHERE%20uid1%20%3D%20me%28%29%29

@Gunnar卡尔森是真实的,但图片的大小(以像素为单位)并不相同。例如,180x180; 180x135。纵横依赖于原始上传图片

您可以通过这种方式得到的图片:https://graph.facebook.com/v2.2/search?fields=id,picture&q= {查询} &类型=用户&的access_token =的accessToken

获取特定尺寸的Facebook用户的个人资料图片,通话

graph.facebook.com/USER_ID/picture?width=900