php-sdk 3.1.1 не может получить $ facebook-> api ('/ me') для тестового пользователя и не отображается запрос на авторизацию - PullRequest
0 голосов
/ 04 сентября 2011

Когда я использую следующий код, $ user_profile = $ facebook-> api ('/ me');покажет информацию для меня, пользователя-администратора, но когда я переключаюсь на тестового пользователя, диалоговое окно разрешений никогда не отображается для тестового пользователя, чтобы добавить приложение, и $ user_profile не определен.

Я могу 'Кажется, что найден один пример кода, который, кажется, делает все правильно с точки зрения проверки того, что приложение авторизовано, а пользователь аутентифицирован.На старых форумах разработчиков FB я вижу, что у многих людей возникает та же проблема с новыми процедурами.

Вот код:

<?php
$appId  = "myid";
$secret = "mysecret";
$canvasurl = "http://www.example.com/myappname/";
$canvas = "http://apps.facebook.com/myappname/";
$scope  = "user_website,email,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown,manage_pages,offline_access";
require_once "facebook.php";
$facebook = new facebook(array(
'appId' => $appId,
'secret' => $secret
)
);
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
}
catch (FacebookApiException $e) {
$user = null;
}

if (!$user) {
$loginUrl = $facebook->getLoginUrl(
array(
'scope' => $scope,
'redirect_uri' => $canvas
)
);

echo <<<LU
<script type="text/javascript">
top.location.href = $loginUrl;
</script>
LU;
}
}
print_r($user_profile);
?>

Спасибо.

1 Ответ

0 голосов
/ 04 сентября 2011

Я выложу свой код

<code><?php
    $fbconfig['appid' ] = "";
    $fbconfig['secret'] = "";

    $fbconfig['baseUrl']    =   "";
    $fbconfig['appBaseUrl'] =   "";

    $user            =   null;

    try{
      include_once "src/facebook.php";
    }
    catch(Exception $o){
      echo '<pre>';
      print_r($o);
      echo '
';} $ facebook = новый Facebook (массив ('appId' => $ fbconfig ['appid'], 'secret' => $ fbconfig ['secret'], 'cookie' => true,));// Аутентификация Facebook part $ user = $ facebook-> getUser ();$ loginUrl = $ facebook-> getLoginUrl (массив ('canvas' => 1, 'fbconnect' => 0, 'scope' => 'user_status, publish_stream, user_photos'));if ($ user) {try {$ user_profile = $ facebook-> api ('/ me');} catch (FacebookApiException $ e) {$ user = null;}} if (! $ user) {echo "
...