Dan*_*ras 5 facebook-graph-api
我注意到当我通过Graph API(使用PHP)访问时间线封面照片URL时,返回的照片是720x266而不是851x315.使用<graph api url>/userId/?field=cover
或访问访问['cover']['source']
时返回的json数组的url<graph api url>/userID
我一直无法找到检索全尺寸封面照片的方法.使用firebug我可以看到Facebook加载完整大小的851x315图像,URL中唯一的区别似乎是API返回的路径中有720x720,
http://a3.sphotos.ak.fbcdn.net/hphotos-ak-prn1/xxxxxx_xxxxxxxxxxxxxxx_xxxxxxxxxx_n.jpg
http://a3.sphotos.ak.fbcdn.net/hphotos-ak-prn1/s720x720/xxxxxx_xxxxxxxxxxxxxxx_xxxxxxxxxx_n.jpg
有没有办法直接访问全尺寸封面照片网址?我可以解析API返回的URL来剥离720x720,但我希望这是一种更优雅的方式直接获取全尺寸封面照片URL.
在PHP中,我们可以执行以下操作.它是一个小小的黑客,我不保证它会终身工作.
如您所见,s720x720
返回的照片网址中有一个.现在我们将用l720
(L720)替换它 .借助于php中的preg_replace().
$coverphoto_url="https://a3.sphotos.ak.fbcdn.net/hphotos-ak-prn1/s720x720/xxxxxx_xxxxxxxxxxxxxxx_xxxxxxxxxx_n.jpg";
$coverphoto_url = preg_replace('/s720/i','l720',$coverphoto_url);
Run Code Online (Sandbox Code Playgroud)
这将返回,
https://a3.sphotos.ak.fbcdn.net/hphotos-ak-prn1/ l720x720 /xxxxxx_xxxxxxxxxxxxxxx_xxxxxxxxxx_n.jpg
您也可以使用javascript执行此操作.
coverphoto_url = coverphoto_url.replace(/s720/i, 'l720');
Run Code Online (Sandbox Code Playgroud)
如果你不知道如何通过图形API检索coverphoto,那么请阅读这个问题.
希望这有助于某人:)
归档时间: |
|
查看次数: |
3366 次 |
最近记录: |