2012-01-05 2 views
1

Я пытаюсь получить пользовательское имя пользователя в настоящее время вошедших в систему. Я использовал это ниже, часть кода ang получила ошибку «Uncaught OAuthException: токен доступа должен использоваться для запроса информации о текущий пользователь»Информация о текущем пользователе в facebook

require '../src/facebook.php'; 
$facebook = new Facebook(array(
    'appId' => '226668060741665', 
    'secret' => 'secret key', 
)); 

$rr=$facebook->getAccessToken(); 

$params = array(
'access_token' => $rr, 
'installed' => 'true', 
'permissions' => 'read_stream,publish_stream' 
); 
$eded=$facebook->api("/me/", "GET", $params); 

Я пытался использовать Facebook::getLoginStatusUrl(), но не получил то, что он вернется. Если я могу использовать выше функции, пожалуйста, скажите мне, как получить идентификатор текущего вошедшего пользователя, и как я могу использовать возвращаемое значение Facebook::getLoginStatusUrl()

Заранее спасибо

ответ

0

Вы должны использовать последние PHP-SDK и читать документацию, которая показывает точно как authenticate пользователь и get his details.

Точный ответ вам нужен уже присутствует в PHP-SDK examples

Вы можете также обратиться к вопросу Get ID from Facebook PHP SDK, которые имеют ответ на ваш вопрос тоже.

+0

Я использую только новый php-sdk. – manojkumar

+1

Вы следили за последней ссылкой в ​​моем ответе? Просто сделай это! –

0

Выполните следующие действия:

  1. Вы генерировать URL: $next_url = $facebook->getLoginStatusUrl();
  2. перенаправлять пользователя на этот адрес: header('Location: '.$next_url);
  3. пользователь будет возвращен на FB с сессии информацию о состоянии входа
  4. SDK проанализирует возвращенную информацию
  5. $facebook->getUser();, чтобы получить access_token и userid (если зарегистрировались)

Пока все хорошо. Единственная проблема заключается в том, что эта функция (точка 4) нарушена, так как переход на oAuth2.0 на Facebook API, см. Также этот отчет об ошибке: http://developers.facebook.com/bugs/295348980494364

Возвращенный $ _GET ['session'] бесполезен в новом oAuth2 .0 SDK, он использовался в старом PHP-SDK v2 (текущий - 3.1.1).

Поэтому, пожалуйста, сообщите FB, что у вас есть такая же проблема, добавив воспроизведение.

Cheers!

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