Я пытаюсь получить токен доступа пользователя из Facebook с помощью PHP-SDK. Процесс регистрации на стороне сервера отлично работает, перенаправляется на правильную страницу и обеспечивает также $code
.Facebook API:/oauth/access_token не работает
После редиректа (и проверки, существует ли $code
), то я называю следующий метод API для обмена $code
для маркеров пользователя (параметры API подавляется здесь):
$fb->api('/oauth/access_token',array(
'client_id' => APP_ID,
'client_secret' => APP_SECRET,
'redirect_uri' => REDIRECT_URI,
'code' => $code
));
$fb_token = $fb->getAccessToken();
echo $fb_token;
К сожалению, все, что я получаю от этого скрипт по-прежнему является токеном приложения. На самом деле, сокращение сценария просто следующий не имеет никакого значения:
$fb_token_user = $fb->getAccessToken();
echo $fb_token_user;
Так я предполагаю, что это все о /oauth/access_token
вызова, который по какой-то причине не работает или, по крайней мере, не делает никаких действий. Он также не возвращает никаких ошибок.
Я пробовал и тестировал несколько альтернатив, таких как метод get_file_contents()
, предложенный в учебнике Facebook, а также добавление дополнительных параметров к вышеуказанному вызову API (например, type=client_cred
и более), но никогда не преуспевает.
Кто-нибудь видит, почему вызов API не работает? Это сценарий или это может быть какая-то установка приложения на Facebook?
Заранее благодарен!
Ваши APP_ID и APP_SECRET верны? У ваших конфигураций приложений есть правильный URL-адрес? –
@fabio И APP_ID, и APP_SECRET верны. Как URL-адрес сайта в конфигурации приложения, я установил https://www.domain.com/ с завершающей косой чертой, которая должна разрешить любой документ в домене, правильно? – uLyXes
попробуйте изменить его на URL-адрес, который получит ответ oauth. –