我正在使用Facebook Graph API来获取用户的新闻源 .
我的请求网址是:xxxxxxxxxxxxxx / feed?fields = from,id,created_time,picture,link,object_id,message,likes.fields(id)
使用object_id,我想使用以下URL获取帖子的大图:http://graph.facebook.com/OBJECT_ID/picture?type=normal
图片返回字段始终填充,但在某些帖子中未返回object_id . 为什么是这样?我真的需要高分辨率的图片,并没有找到另一种方式来获得这个..
3 回答
仅当附件是facebook对象(例如,用户上传的图像)时才返回object_id . Feed中的某些故事根本没有图片,有些图片不是facebook对象(例如,共享链接的缩略图) .
有时,Facebook会保留图像的缩略图,并在图形请求返回的URL中存储指向较大版本图像的外部链接 . 为了在任何一种情况下访问图像,我使用下面的代码,其中smallURL是图形请求返回的URL:
我还注意到一些FB帖子对于大型照片没有
{object_id}
,但意识到{picture}
缩略图URL包含原始大图像的编码URL:所以我检查
{object_id}
,如果没有,那么尝试从{picture}
中提取原始URL: