Facebook缩略图更大


Facebook thumbnail bigger size

我用它来获取缩略图:https://graph.facebook.com/806640129377133/picture

但这输出的图像大小为160 x 160像素,我需要至少640 x 360像素。我尝试了几种方法(如:https://graph.facebook.com/806640129377133/picture?type=large)但什么都不管用。如何获取更大的缩略图?

luschn提到的方法是要求特定尺寸的图片的正常方法;然而,在这里它似乎不起作用,为宽度/高度指定更大的值仍然只能得到160×160的版本。

然而,如果你看一下format字段,它会显示这样的内容,

  "format": [
    {
      "embed_html": "<iframe src=…></iframe>", 
      "filter": "130x130", 
      "height": 130, 
      "picture": "…", 
      "width": 130
    }, 
    {
      "embed_html": "<iframe src=…></iframe>", 
      "filter": "native", 
      "height": 400, 
      "picture": "…", 
      "width": 400
    }
  ], 

因此,可以获得更大版本的图片,在本例中尺寸为400×400。

尽管它甚至提到了filter属性,但我还没有找到一种方法让它只显示大图——但你可以循环浏览它,看看哪一个的宽度/高度最大。

如果你打那个电话?fields=format{picture,width,height},则只能获得picturewidthheight属性(如果您希望保持较小的占用空间并避免请求不必要的数据)。

这是如何获得所需分辨率的图片:

https://graph.facebook.com/[Graph-ID]/picture?width=121&height=100

它可能会大一点,但会将宽度和高度参数设置为最小值。

如果它不起作用,则可能无法以足够大的分辨率上传图像。这适用于个人资料(头像)的个人资料图片,但在这种情况下,它是一个视频,我怀疑你会得到一个更大的。

感谢@CBroe提供的原始解决方案。

以下是获取facebook视频最高分辨率缩略图的最简单方法。

$request_url ="https://graph.facebook.com/{VIDEO_ID}/?fields=format{picture,width,height}";
$requests = file_get_contents($request_url);
$fb_response = json_decode($requests);
echo end($fb_response->format)->picture; //highest resolution image available

花了半天时间找这个!希望我能节省你的时间!:D