1

Internet Explorer での Facebook 認証に問題があります。このコードは、Firefox、Chrome、Safari では機能しますが、IE では機能しません。

loginUrl で href をクリックすると、このメッセージが表示されます (IE でのみ、それ以外は問題ありません)。

致命的なエラー: OAuthException がキャッチされていません: 現在のユーザーに関する情報を照会するには、アクティブなアクセス トークンを使用する必要があります。/data/web/virtuals/30096/virtual/www/qcomp/libs/base_facebook.php の 1238 行目にスローされます

これが私のコードです:

    session_start();

    define('APP_ID', 'SOMETHING');
    define('APP_SECRET', 'SOMETHING');
    define('CANVAS_PAGE', 'SOMETHING');
    define('CANVAS_URL', 'SOMETHING');

    require_once './libs/facebook.php';

    $facebook = new Facebook( array('appId' => APP_ID, 'secret' => APP_SECRET, ));

   $user = $facebook->getUser();
    $redirecturl = 'BACK_TO_TAB';

    if(isset($user)) {
        try {
            $user_profile = $facebook->api('/me');
            $user_friends = $facebook->api('/me/friends');
            $_SESSION['user'] = $user_profile;
            $_SESSION['friends'] = $user_friends;
        } catch (FacebookApiException $e) {

        $user = NULL;
      }
}

if($user == NULL)
{ 
        $loginUrl = $facebook->getLoginUrl(
        array(
            'scope' => 'publish_stream',
            'redirect_uri' => 'URL',
        )
    );
}
else
{   
    header("Location: ./step2.php");
    $_SESSION['user'] = $user_profile;
    $_SESSION['friends'] = $user_friends;
}
?>

<!doctype html>
<html>
    <head>
    </head>
    <body>
        <div id="layout">
            <a href="<?php echo $loginUrl ?>" target="_blank">
                <div class="enter"></div>
            </a>
        </div>
    </body>
</html>

アドバイスありがとうございます。

4

0 に答える 0