Я использую следующий код для получения разрешений для моего приложения (код находится в index.php) -
<?php
require_once "sdk/facebook.php";
$fbconfig['appid'] = "333446170045623";
$fbconfig['secret'] = "9ea7b92bc7eac852a3900e1d7931c34d";
$facebook = new Facebook(array(
'appId' => $fbconfig['appid'],
'secret' => $fbconfig['secret'],
'cookie' => true,
));
$user = $facebook->getUser();
if (!$user) { /* If user not found, authenticate */
$loginUrl = $facebook->getLoginUrl(
array(
'scope' => 'publish_stream',
'redirect_uri' => 'http://www.facebook.com/pages/pagename?sk=app_333446170045623'
));
echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
}
$signed_request = $facebook->getSignedRequest();
?>
Теперь на странице есть ссылка, которая ведет пользователя на страницу select.php. Там я попытался использовать следующий код, чтобы получить информацию о текущем пользователе-
$user_profile = $facebook->api('/me');
Я разместил на этой странице тот же код получения разрешения, что и на странице index.php.
Тем не менее, я получаю следующую ошибку на этой странице -
Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user. thrown in /server/html/appname/sdk/base_facebook.php on line 1106
Я пробовал различные предлагаемые решения, но они, похоже, не работают. Как мне использовать $ facebook-> api ('/ me'), чтобы получить информацию на этой странице? (кстати, я использую последний php SDK Facebook)