[英]Using facebook graph api how to get news feed with large picture size if the feed type is photo?
使用facebook graph api获取新闻源: https : //graph.facebook.com/me/home ?access_token = ...
它返回的图片字段都是最小的,如图片“:” https://fbcdn-photos-ba.akamaihd.net/hphotos-ak-ash3/xxxxxx4_s.jpg :
我可以使用任何参数来检索更大的缩略图吗? 有什么办法吗?
您可以为返回的对象添加自定义字段列表。
?fields=full_picture
将返回完整大小的图像。
我发现将文件URL末尾的字符交换为_n,_b或_o不再有效。
Facebook发布了图形API 2.0,可以用来解决这个问题。
这是解决方案:
在每个Post对象中都可能有一个object_id字段。 仅当帖子中包含视频图片(即type ='photo'或'video')时,才会显示此字段
例如,如果object_id = 123并且您的访问令牌= abc,那么要调用的URL将变为https://graph.facebook.com/v2.0/123?access_token=abc
此API调用获取有关给定object_id的更多信息。 由于此情况下的object_id表示照片,因此响应将包含照片的各种版本。
可以在此处找到此请求的响应: https : //developers.facebook.com/docs/graph-api/reference/v2.0/photo
API调用的响应具有字段名称图像。 这包含从小到大的图像大小。 拿最大的一个。
与图片字段一起,有一个object_id字段。 将此ID放在url下面:
https://graph.facebook.com/ {object_id} / picture
这将返回实际尺寸的图像。 或者你可以为不同的图像尺寸写这个。
https://graph.facebook.com/ {object_id} / picture?type = normal
类型可以是:缩略图,普通,专辑。
我正在寻找同样的事情。 我知道你可以在最后交换_s
为_n
并获得更大的尺寸......但我还没弄明白如何让api自己返回更大的尺寸。
您可以使用帖子条目的[object_id]
发出额外请求
$res = $facebook->api('/yourid', 'GET', $params);
即使为_l或_b交换_s也可能会产生更大的缩略图。
但有时会导致无效请求或空白图像而不是深色背景上的白点。
理想情况下,api应指定crop,thumb,normal和large(如在twitter网络上)与网络上的每个图片对象。
它返回最小的尺寸,即130x130。 要获得更大的尺寸,请尝试用它替换
320×320
小480x480
600×600
720x720
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.