在我的页面上,用户可以上传图片并将其发布到他们的Facebook墙上 - 但通常他们应该只能登录到他们的Facebook帐户登录。我用这段代码检查用户状态:
// check if user is connected to facebook
$facebook = new Facebook(array(
'appId' => Yii::app()->params['fbAppId'],
'secret' => Yii::app()->params['fbSecret'],
));
$user = $facebook->getUser();
if ($user = $facebook->getUser())
{
try
{
$user_profile = $facebook->api('/me');
echo "you are logged in";
}
catch (FacebookApiException $e)
{
$user = NULL;
echo "you are logged out";
}
}
(甚至那个代码,建议用来检查用户是否只有一个会话但是有效的fb登录,但是返回true,尽管我不再登录Fb。)
现在,如果我通过Facebook Connect登录我自己的页面,然后从FB注销 - 我仍然在我自己的网页上登录。多数民众赞成在当下。但是这段代码不应该起作用:
$facebook->api('/me/feed', 'POST', $attachment);
这意味着网站会将用户直接上传的图片发布到用户的Feed中。这似乎工作,虽然用户从Facebook登出...
顺便说一下,我没有要求离线许可。
祝福, 塞巴斯蒂安