2014-08-30 133 views

回答

0

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

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

这可能是有点大,但将有一系列的宽度和高度参数最小值。

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

2

luschn提到的方法是正常的要求具有特定尺寸的图片;然而在这里它似乎没有工作,指定更大的宽度/高度值仍然只给出了160×160版本。

但是如果你look at the format field,它显示了这样的事情,

"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属性(如果你想保持小的足迹,并避免不必要的请求数据)。

+0

这应该是公认的答案!完美的作品!花了半天的时间寻找这个解决方案!谢谢@CBroe! – 2014-12-10 06:40:55

0

谢谢@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

相关问题