Facebook 应用程序在 Facebook 页面内获取身份验证

facebook app get authentication inside a facebook page

我有一个 Facebook 页面 我已经构建了一个应用程序在页面选项卡中 该应用程序与原版 url 配合良好 它从 facebook 和 return 获取登录到 url

如何在不更改 url "inside the iframe" 的情况下从用户那里获得授权?

require_once("facebook.php");
$facebook = new Facebook(array(
        'appId' => 'App_id',
        'secret' => 'Secret'));
$current_user = $facebook->getUser();

$params = array('scope' =>'email,user_likes,user_friends');
if ($current_user) { 
    try {
            $expiration = time() + 172800; 
            $cookie_value = $current_user . '|' . $expiration;
            setcookie('fbid', $cookie_value, $expiration , "/");
            echo '<script type="text/javascript">
            window.location = "like.php";
            </script>';
    } catch (FacebookApiException $e) {
        $login_url = $facebook->getLoginUrl($params);
        echo '<script type="text/javascript">
        window.location = "' . $login_url . '";
        </script>';
        exit;
        error_log($e->getType());
        error_log($e->getMessage());
    }
} else {
    $login_url = $facebook->getLoginUrl($params);
    echo '<script type="text/javascript">
        window.location = "'.$login_url.'";
        </script>';
    exit;
}

创建一个 facebook 选项卡应用程序而不是 web 应用程序 并使用 JS SDK