繁体   English   中英

Facebook getLogoutUrl()无法按预期工作

[英]Facebook getLogoutUrl() doesn't work as expected

这是我的代码:

    <?php
require_once("facebook-php-sdk/src/facebook.php");
    define('YOUR_APP_ID', 'xxxxxxxxxxxxx');
    define('YOUR_APP_SECRET', 'xxxxxxxxxxxxxxxxxxxxxxxx');
    $facebook = new Facebook(array(
     'appId' => YOUR_APP_ID,
     'secret' => YOUR_APP_SECRET,
    ));
    $userId = $facebook->getUser();
    if($userId){
         $userInfo = $facebook->api('/' + $userId);
         $fbid = $userInfo['id'];
         $params = array();
         echo '<a href='.$facebook->getLogoutUrl($params).'><div class="text-facebook"><img style="vertical-align:middle;" src="/img/fbicon.png">Logout</div></a>';                         
               }
                else{
                  $permission = array('scope' => 'email');
                  echo '<a href='.$facebook->getLoginUrl($permission).'><div class="text-facebook"><img style="vertical-align:middle;" src="/img/fbicon.png">Login with Facebook</div></a>';
                     }
?>

登录工作完美,但当我点击退出按钮时,它会将我从facebook.com中导出,但它会保留在我的网站上,这与我想要的完全相反。 我想要链接从我的网站删除所有Facebook信息,但让用户登录到Facebook。

我不知道我是否正确解释了我需要什么,但如果有人问我,我会清楚的。

如果您希望用户从您的网站注销但仍然登录到Facebook,那么答案很简单:

不要使用facebook-> getlogouturl()

如果成功登录后,您将变量设置为true,并使用该变量允许您仅授予登录用户的操作,那么您需要执行的所有注销按钮都将该变量设置为false。

这里的问题不是退出链接(它正常工作,因为它会让你退出Facebook),但它是你的网站检查你是否仍然登录Facebook的方式

您使用的Facebook API仅处理Facebook的一面。 登录链接将登录到Facebook,登出链接将使您退出Facebook。 它不会直接影响您的网站。

您需要了解您的网站如何决定您是否仍然登录Facebook,并从那里开始。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM