5

当“第三方”cookie 被禁用时,让用户保持登录状态的最佳方式是什么?我目前有一个 Facebook 连接应用程序(仅在 PHP 中),当我在 Firefox 中选中它时效果很好,但在未选中时重定向到我的登录页面。即使 Facebook 自己的示例应用程序(therunaround)也有同样的问题,所以我想知道是否没有办法解决这个问题。

编辑:

@codege3k

尝试了一堆 p3p 标头。到目前为止没有骰子。我有一个登录页面,当用户“连接”时重定向到我的索引......第一次加载,我能够从中获取用户 ID,get_loggedin_user()但是当我刷新时,该函数返回 null。cookie 存在,当我返回登录页面并再次单击连接时,它不会提示我登录,所以我知道它部分工作。在 Firefox 中打开“第三方 cookie”后,它就像一个魅力。

编辑:

如果第三方 cookie 不受广泛支持,那么在用户登录的上下文中处理 facebook 连接的最佳方法是什么?我是否应该只使用有效的初始登录并为我自己的网站设置一个本地 cookie 并使用它而不是每次都检查 facebook 状态?

4

3 回答 3

5

好的,推广会议似乎有效。

$fbUserId = self::$facebook->get_loggedin_user();
if ($fbUserId)
{
     self::$facebook->promote_session();
     return $fbUserId;
}

编辑:

因此,这会在每个请求上获取会话,但本质上,必须启用第三方 cookie,Facebook Connect 才能按预期工作。从他们的文档中:

用户的浏览器必须设置为接受第 3 方 Cookie,以便在点击之间保持连接。

来源:http ://wiki.developers.facebook.com/index.php/Logging_In_And_Connecting

于 2009-03-03T19:35:12.183 回答
2

我对 3rd 方 cookie 也有类似的问题。检查这个问题,看看它是否解决

可以通过添加 p3p 标头来解决。

于 2009-03-03T17:32:27.003 回答
0

那么 P3P 是否可以为不接受 3rd 方 cookie 的浏览器解决此问题?我在http://bugs.developers.facebook.com/show_bug.cgi?id=5009评论了一个 FB 错误。

于 2009-06-19T02:30:48.767 回答