我想知道我是否可以在请求时设置图片宽度和高度。有人建议我使用以下查询来实现此行为:
SELECT id, width, height, url, is_silhouette, real_width, real_height FROM profile_pic
WHERE id=me() AND width=155 AND height=50
这是正确的过程吗?根据我的要求,我需要在表格中显示个人资料图片,如所附屏幕截图所示,宽度为 155,高度为 50。
提前致谢
我想知道我是否可以在请求时设置图片宽度和高度。有人建议我使用以下查询来实现此行为:
SELECT id, width, height, url, is_silhouette, real_width, real_height FROM profile_pic
WHERE id=me() AND width=155 AND height=50
这是正确的过程吗?根据我的要求,我需要在表格中显示个人资料图片,如所附屏幕截图所示,宽度为 155,高度为 50。
提前致谢
这是一个代码,可以帮助您获取朋友的头像。
从 FBGraph API 获取朋友的 ID,例如
NSString *id = @"505326797";
然后粘贴以下代码...
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/picture",id]];
这是您可以获得朋友图片的确切网址的方式,在异步图像视图或其他地方使用它......
也许它会帮助你...
FQL 获取 facebook 好友信息列表和他们的照片
NSString *query = @"SELECT uid,name,first_name,last_name,pic_square FROM user WHERE uid IN (";
query = [query stringByAppendingFormat:@"SELECT uid2 FROM friend WHERE uid1 = %@)",userid];
NSMutableDictionary * params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
query, @"query",
nil];
[_facebook requestWithMethodName: @"fql.query"
andParams: params
andHttpMethod: @"POST"
andDelegate:self];
您将通过以下方法得到响应
-(void)request:(FBRequest *)request didLoad:(id)result
例如
{
"first_name" =User;
"last_name" = R;
name = "User R";
"pic_square" = "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-ash2/.jpg";
uid = 595sd1;
}
{},{} etc
希望这可以帮助!
另一种方法是
获取用户的id(或昵称),并从https://graph.facebook.com/idOrNick/picture获取图片
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/picture", id]];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *image = [UIImage imageWithData:data];
UIImageView *imgView = [[UIImageView alloc]init];
imgView.image = image;
而对于尺寸
图片尺寸:正方形(50×50)
小(50 像素宽,可变高度)
大(大约 200 像素宽,可变高度)
并且要应用这种类型的大小,您必须将其附加到 URL 的末尾
例如
http://graph.facebook.com/“id或 Nick”/picture?type=large。[小/方形/大]
使用 Graph API 字段扩展方法 -
graph.facebook.com/USER_ID?fields=friends.fields(picture.height(50).width(155))
我也在寻找这个问题的答案。最后我认为这个电话是最好的:
http://graph.facebook.com/me/friends?fields=name,picture.height(200).width(200)
您还可以将“我”替换为某个 ID。
是的。你的代码是正确的。这将获得大约的图片版本。155 x 50 像素。
如果您想获取用户朋友的照片,请使用以下查询:
SELECT id, width, height, url, is_silhouette, real_width, real_height
FROM profile_pic
WHERE id IN (SELECT uid1 FROM friend WHERE uid2=me()) AND width=155 AND height=50
根据文档https://developers.facebook.com/docs/reference/api/using-pictures/,有一种更简单的方法可以做到这一点。从 facebook 获取自定义图像的直接 URL 是:
https://graph.facebook.com/<USER_ID>/picture?width=<WIDTH>&height=<HEIGHT>
我知道问题是关于使用 GraphAPI 获取 URL,但是当您可以直接提供图像 src URL 时,为什么还要进行一次额外的调用。
<img src="https://graph.facebook.com/${ID}/picture?width=${customwidth}&height=$customheight" />