我在我的网站上通过在php代码中调用此Url显示facebook页面/组的feed/帖子-
https://graph.facebook.com/page_id/feed?access_token=token_value
那么,在许多类型的帖子中,对于图片类型的帖子,我得到图片url为
http://photos-g.ak.fbcdn.net/hphotos-ak-frc3/t1.0-0/1972372_10152261154160659_883879121_s.jpg
现在它是小尺寸的最后一部分"_s.jpg"表明。但是我希望所有的图片尺寸都是大的。因此,要实现这一目标,需要在图形api url -"https://graph.facebook.com/page_id/feed?access_token=token_value"中包含哪些参数,以便所有图片/视频类型的帖子的图片将是大尺寸的??我猜最后会有"_b.jpg"。这在一个图形api调用中是可能的吗?
我通过谷歌搜索,但没有运气,但最终计划我将用"_b.jpg"取代上面的pic url的最后一部分,以便url将像-
http://photos-g.ak.fbcdn.net/hphotos-ak-frc3/t1.0-0/1972372_10152261154160659_883879121_b.jpg
但是这个hack有什么缺点吗??如果可能的话,在一个图形API调用中实现的正确方法是什么?
通知,
/page/feed?fields=attachments
将显示所有附件的完整尺寸。
您可以使用FQL查询来获取页面提要中使用的大版本照片的源信息:
SELECT pid, object_id, src_big, src_big_width, src_big_height FROM photo WHERE object_id in (SELECT attachment.media.photo.fbid FROM stream WHERE source_id={page_id} AND actor_id={page_id})
不确定这是否真的记录在某个地方-但在Graph API Explorer中,"搜索字段"功能建议一个名为full_picture
的字段。一些快速测试表明,对于大多数feed项目,它返回用于发布帖子的原始图像,无论是与帖子一起上传的图片,视频缩略图还是其他内容。
你可以像这样在你的提要调用中使用它:
/{user-or-page-id}/feed?fields=full_picture,message,type,…
当使用fields
参数时,默认情况下您将获得的字段只有id
和created_time
,您可能感兴趣的其他所有字段(message
, type
, from
等)您也必须特别要求。
这适用于任何可能附带图片的提要项类型(type:photo
除外)。对于那些,你也会得到一个object_id
,当你在第二个请求中显式查询时,你会得到一个images
数据结构,它列出了Facebook在其CDN上不同的图像大小。
我还没有找到一种方法来让它在原来的/foo/feed
请求中吐出额外的信息,但是如果你收集调用传递的所有object_id,你可以在像这样的第二次调用中使用它们来一次获取多个对象的信息:
/?ids=object_id1,object_id2,…&fields=images
每个提要都有一个节点名称object-Id,像这样使用这个id
graph.facebook.com/object-id/picture ? type =大
如果显示问号照片,则在查询字符串中使用access_token=XXXXXX