【问题标题】:facebook getLogoutUrl脸书getLogoutUrl
【发布时间】:2012-07-05 11:53:07
【问题描述】:

facebook,像往常一样无法按预期工作。

打电话来

$facebook->getLogoutUrl($params);

使用

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

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

那么,我们从这里去哪里? 我究竟做错了什么? 脸书做错了什么?

【问题讨论】:

标签: facebook


【解决方案1】:

这是因为 cookie。我做了以下来解决这个问题...

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

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

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

setcookie('PHPSESSID', '', time()-3600, '/');
header('Location: http://www.yourdomain.com');

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 2015-03-16
        • 2016-06-09
        • 1970-01-01
        • 2014-07-05
        • 2015-08-22
        • 2011-11-07
        • 2012-06-04
        • 2011-02-14
        • 2016-05-16
        相关资源
        最近更新 更多