2

Facebook 接続を処理するために PHP SDK を使用しています。しばらくの間、すべてが正常に機能していましたが、スクリプトが突然機能しなくなりました。何が起こるかは次のとおりです。

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

$user = $facebook->getUser();

if ($user) {

    $permissions = $facebook->api('/me/permissions');

} else {

    $params = array();
    $params['scope'] = 'publish_actions,user_photos';
    header('Location: ' . $facebook->getLoginUrl($params));
    exit();

}

戻り値: 致命的なエラー: Uncaught OAuthException: 現在のユーザーに関する情報を照会するには、アクティブなアクセス トークンを使用する必要があります。

エラーは行によって引き起こされます

$permissions = $facebook->api('/me/permissions');

助言がありますか?

4

2 に答える 2

0

試してみませんか

$permissions = $facebook->api(
                '/me/permissions ',
                'GET',
                array(
                    'access_token' => $_SESSION['active']['access_token']
                )
            );
于 2012-12-11T10:23:22.927 に答える
0

常に例外をチェックしてください!簡単な例を次に示します: https://developers.facebook.com/docs/reference/php/facebook-api/

$user は現在のユーザーのユーザー ID を返しますが、ユーザーがその間にログアウトしなかったことや、トークンがまだアクティブであることを保証するものではありません。したがって、user_id を取得したからといってこれに頼るのではなく、例外を確認してください。ユーザーに再度 [ログイン] をクリックするように求めるか、例外が発生した場合にユーザーをログイン ページに自動的にリダイレクトすることができます。

于 2012-06-20T21:14:13.267 に答える