0

我在我的本地主机页面上使用facebook-php-sdkgithub)进行 facebook 登录,当我注销时,页面没有重定向..

在同一页面上,我可以在数组中看到我的个人资料信息,即使在我按下注销之后,页面上的数据也应该是空的,但它会显示所有信息。

我使用了下面的代码,但它没有重定向

$logoutUrl = $facebook->getLogoutUrl(array('next' => 'http://google.com'));

<?php if ($user): ?>
    <a href="<?php echo $logoutUrl; ?>">Logout</a>
<?php else: ?>
    <div>
    Login using OAuth 2.0 handled by the PHP SDK:
    <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
    </div>
<?php endif ?>
4

1 回答 1

2

对我来说,使用 PHP SDK 成功注销的唯一方法是:将注销按钮重定向到一个函数并执行以下操作

private function do_facebook_logout() {
    // Get an instance of the Facebook class
    $facebook = $this->facebook_instance_factory();
    // Destroy the session so that no Facebook data is held
    $facebook->destroySession();
    // Get the logout URL from the Facebook Class
    $logout = $facebook->getLogoutUrl();
    // Redirect the user to the logout url, facebook will redirect him to our page
    wp_redirect( $logout );
}

在取消设置 facebook 会话后,我实际上重定向了用户。请记住,如果您在 Facebook 类的实例中以编程方式设置访问令牌,您也必须使令牌无效

于 2012-05-26T10:53:19.960 回答