0
由于某些原因,当我检查用户是否登录Facebook时,我在$ facebook-> 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;
}
}
任何人都可以帮我吗?
好的,使用Facebook-> clearAllPersistentData()的作品,但只是在登录后的页面按钮。如果我访问其他页面,然后回到应用程序页面,它会再次返回登录按钮(显然,如果您清除所有持久数据:)),并且它不是那么好。我不能使用第二个解决方案,因为我只有一个PHP页面与Facebook应用程序,所以我不能使用其他网址。但我不明白为什么API返回给我的用户信息!调用getUser()之后调用api调用不应该说该令牌无效(如果用户注销)?为什么Api不会捕获异常? –