Facebook getUser()函数在注销后返回用户ID

Luk*_*uke 15 facebook facebook-php-sdk

我正在开发使用Facebook PHP SDK.

我想这样做,以便当用户退出Facebook时,它们也会自动退出我的网站.

我使用以下代码来检测会话,使用会话cookie:

$facebook->getUser();
Run Code Online (Sandbox Code Playgroud)

出于某种原因,该getUser()功能仍然返回用户的Facebook ID,即使他们已经在他们的网站上退出Facebook.

我是否首先使用其他功能检测会话?

这里的官方文档示例中,以下是他们评论的摘录:

// Get User ID
$user = $facebook->getUser();

// We may or may not have this data based on whether the user is logged in.
//
// If we have a $user id here, it means we know the user is logged into
// Facebook, but we don't know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.
Run Code Online (Sandbox Code Playgroud)

这让我相信Facebook的会话cookie会在Facebook注销时失效吗?

亲切的问候,

卢克

小智 12

我有同样的问题!

FB PHP SDK将这些内容保存到$ _SESSION中!当用户点击退出时,您可以将其删除:

$_SESSION['fb_'.APP_ID.'_user_id'] = '';
$_SESSION['fb_'.APP_ID.'_access_token'] = '';
Run Code Online (Sandbox Code Playgroud)

虽然这不是最终的解决方案,但它现在有效.

我很感激评论和解决方案!