2014-11-25 5 views
0

Я использую API Facebook, чтобы вытаскивать сообщения на свой сайт, и в настоящее время я не могу получить полноразмерное изображение из сообщения, только миниатюры. Для сообщений, которые являются видео, я получаю красивое большое изображение, но сообщения с изображениями отображают только уменьшенное изображение.Facebook API отображения полноразмерного изображения со страницы сообщение?

Вот пример ответа:

[message] => She still likes to come home 
        [picture] => https://fbcdn-sphotos-b-a.akamaihd.net/hphotos-ak-xfp1/v/t1.0-9/s480x480/1509768_949952475034523_5777855144535809574_n.jpg?oh=296a9975752be40f24a0e32d613328aa&oe=54DCDB3A&__gda__=1426487880_adf80b362906423f8952c92925766989 
        [link] => https://www.facebook.com/photo.php?fbid=949952475034523&set=o.337363685362&type=1 
        [icon] => https://fbstatic-a.akamaihd.net/rsrc.php/v2/yz/r/StEh3RhPvjk.gif 
        [privacy] => stdClass Object 
         (
          [value] => 
         ) 

        [type] => photo 
        [object_id] => 949952475034523 
        [application] => stdClass Object 
         (
          [name] => Facebook for iPhone 
          [namespace] => fbiphone 
          [id] => 6628568379 
         ) 

        [created_time] => 2014-11-25T18:43:41+0000 
        [updated_time] => 2014-11-25T18:43:41+0000 

Обратите внимание, как результат в [picture] это небольшое изображение.

Вот код, я использую:

<?php 
function fetchUrl($url){ 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_TIMEOUT, 20); 

$feedData = curl_exec($ch); 
curl_close($ch); 

return $feedData; 
} 

$profile_id = "xxxxx"; 

//App Info, needed for Auth 
$app_id = "xxxxxxxxxxx"; 
$app_secret = "xxxxxxxxxxxxxxxxxxxxxxxxx"; 

//Retrieve auth token 
$authToken = fetchUrl("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id={$app_id}&client_secret={$app_secret}"); 

$json_object = fetchUrl("https://graph.facebook.com/{$profile_id}/feed?{$authToken}"); 

$feedarray = json_decode($json_object); 
print_r($feedarray); 
?> 

Есть другой способ кодирования это, что позволит мне получить полноразмерное изображение, или есть способ изменить структуру URL, который вернулся, чтобы отобразить увеличенное изображение?

спасибо.

ответ

1

Обнаружено это старое сообщение; вы, должно быть, уже поняли это; тем не менее, ответ для вас, чтобы реструктурировать свой адрес для того, чтобы получить «привязанность»:

https://graph.facebook.com/{$profile_id}/feed?access_token={$authToken}&fields=attachments 

Вы получите «SRC», который будет иметь увеличенное изображение.

Смежные вопросы