Используя Facebook Graph API, я могу получить доступ к JSOD для моего альбома, но не через API-вызов через PHP SDK - PullRequest
0 голосов
/ 31 января 2011

Моя проблема в этом.Я могу получить доступ к JSOD для любых браузеров, независимо от файлов cookie / кеша, используя Graph API, и мне будет предоставлено разрешение.Но когда я пытаюсь использовать его с php sdk, он не будет отображаться, пока я не войду в систему.

ПРИМЕЧАНИЕ:

Пользователь, к которому у него есть доступ, был oAuth'd с 'offline_access'.

Это работает из любого места, в любое время, независимо от того, вошел я в систему или нет.

https://graph.facebook.com/113401955056/photos?access_token=195481353795312|21c8aad906641dc6f0894861-509590056|IEyCHjWm-3XFpX__eCtv0OMZUisectrezz

Это не работает, если я уже вошел в Facebook.

<?php
require_once ('../lib/facebook.php');

$app_id = '195481353795312';
$app_secret = 'secretzz';
$facebook = new Facebook(array(
  'appId'  => $app_id,
  'secret' => $app_secret,
  'cookie' => true,
));

  $photos = $facebook->api("/113401955056/photos?access_token=195481353795312|21c8aad906641dc6f0894861-509590056|IEyCHjWm-3XFpX__eCtv0OMZUisecretz");

  foreach($photos['data'] as $photo)
  {
    echo '<figure class="thumbnail">
    <a href="'.$photo['source'].'">
    <img src="'.$photo['picture'].'" />
    </a>
    <figcaption class="thumb_title">'.$photo['name'].'</figcaption>
    <!-- end of thumb -->
    </figure><!-- end of figure -->
    ';
  }
?>

1 Ответ

0 голосов
/ 31 января 2011

Насколько я знаю, вам действительно нужен токен пользователя для off-line_access

$session = $facebook->getSession();

if ($session) {
    // you need to store the $session['access_token']; 
}

После этого вы можете получать данные пользователя в автономном режиме:

$token =  array(

    'access_token' => 'TOKEN HERE'

);

$userdata = $facebook->api('/me', 'GET', $token);

Вот целая статья об этом - http://eagerfish.eu/using-facebook-off-line-access-to-post-on-users-wall/ Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...