Facebook PHP API:$ facebook-> api('/ me')总是返回信息

时间:2012-05-04 15:14:07

标签: facebook api

出于某种原因,当我检查用户是否登录Facebook时,我在$ facebook-> api('/ me')上拨打api电话;如果用户退出Facebook,检查访问令牌是否无效,即使我从Facebook页面退出(在另一个选项卡中),我也可以看到用户信息,我无法确定用户是否从Facebook注销。

public function __construct() {
    $facebook = new Facebook(array(
        'appId'  => $this->_fbappid,
        'secret' => $this->_fbappsecret,
        'cookie' => true,
    ));
    $this->_facebook = $facebook;
}

public function checkFacebookLogin() {
    try {
        $user = $this->_facebook->getUser();
        $user_profile = $this->_facebook->api('/me','GET');
        return true;
    } catch(FacebookApiException $e) {
        return null;
   }

}

任何人都可以帮助我?

1 个答案:

答案 0 :(得分:0)

您可能希望在检查用户

之前清除持久数据
facebook->clearAllPersistentData()

如果要检查状态,应使用以下方法将用户重定向到login_status.php:

facebook->getLoginStatusUrl($params)

获取登录状态URL以从Facebook获取状态。

参数:

  • ok_session:找到会话时要转到的网址
  • no_session:用户未连接时要转到的网址
  • no_user:如果用户未登录facebook,则转到的网址