0

Facebook PHP API で問題が発生しました

<?php
$fb_ = new Facebook(array(
    'appId'  => 'MY_APPID',
    'secret' => 'MY_SECRET'
)); 
$userId = $fb_->getUser();
$errorMessage = null;

if ($userId) {
    try {
        $user_ = $fb_->api('/me');
        if (isset($user_['error_code'])) {
            $errorMessage = isset($user_['error_msg']) ? self::$user_['error_msg'] : 'An unknown error occurred';
            $errorMessage .= ' (' . $user_['error_code'] . ')';
            $user_ = null;
        }
    } catch (FacebookApiException $e) {
        $errorMessage = $e->getMessage();
        $user_ = null;
    }
}

if (!$user_)  {
    $loginUrl = $fb_->getLoginUrl(array(
        'scope' => 'email,publish_stream,user_birthday,user_location,publish_actions',
        'next' => 'http://www.mywebsite.com'
    ));
    echo '<a href="'.$loginUrl.'">Connect!</a>';
} 
?>

私の問題は、「Connect!」をクリックしたときです。Facebookのメインページにリダイレクトされます。何か案が?

4

2 に答える 2

0

その理由がわかりました。非推奨の getSession で古いバージョンの Facebook を使用していたようです。

于 2012-11-14T08:41:04.797 に答える
0

ダイアログの URL は次のように構成されています。

$loginUrl = "https://www.facebook.com/dialog/oauth?client_id="
                . $appId . "&redirect_uri=" . $redirectUrl . "&state="
                . $_SESSION['state'] . "&scope=" . $scope;

$loginUrl をエコーし​​、文字列が正しい URL 文字列であるかどうか、および構造が同じかどうかを確認します。

于 2012-11-13T14:59:24.250 に答える