1

facebook,像往常一样不能按预期工作。

打电话时

$facebook->getLogoutUrl($params);

使用

 $params = array( 'next' => 'http://mywebsiteurl.com/loggedout.php' );

浏览器视图被重定向到loggedout.php,这很好。除非当用户继续访问 facebook.com 时,他们发现他们仍然处于登录状态,这并不好。

那么,我们该何去何从?我究竟做错了什么?脸书做错了什么?

4

3 回答 3

1

这是因为饼干。我做了以下事情来解决这个问题......

在 getLogoutUrl 方法的参数中,您设置自己的注销 URL:

$facebook->getLogoutUrl(array( 'next' => 'http://www.yourdomain.com/logOut/' ));

并在您的注销文件中重置 cookie:

setcookie('PHPSESSID', '', time()-3600, '/');
header('Location: http://www.yourdomain.com');
于 2013-05-12T20:15:54.650 回答
0

我有同样的问题。从注销 URL 返回后,调用 $facebook->getUser() 仍会返回用户 ID。

我通过向“下一个”参数添加一个查询字符串来解决这个问题,如果设置了该参数,我会将用户视为已注销。

于 2012-08-01T04:55:41.830 回答
0

我在使用 getLogoutUrl(); 时遇到了类似的 SDK 问题。使用 next 参数永远不会被重定向回 Web 应用程序。

因此,我已经放弃让用户能够使用该功能断开我的应用程序的连接。现在我只是从我们的系统中删除他们的访问令牌并告诉他们手动取消对 FB 站点上的应用程序的授权 - 并提供指向http://www.facebook.com/settings?tab=applications的超链接

于 2013-03-22T17:44:04.553 回答