php - Facebook 连接和第三方 cookie?

标签 php cookies facebook

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

编辑:

@codege3k

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

编辑:

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

最佳答案

好的,推广 session 似乎有效。

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

编辑:

所以这会在每次请求时获取 session ,但本质上,必须启用第三方 cookie 才能使 Facebook Connect 按预期工作。来自他们的文档:

The user's browser must be set to accept 3rd Party Cookies in order for it to stay connected between clicks.

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

关于php - Facebook 连接和第三方 cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/607346/

相关文章:

php - 在 PHP 中检索日期名称

java - 我的 Firebase/Facebook Auth 登录有效,并且不会在我的下一个 Activity 中显示用户用户名 : activity_main. xml

php - sql 和 php - 此查询或代码是否存在 ant 问题

PHP include_once 在本地工作但调用 cron 不工作

c# - Cookie 过期未按预期工作

php - 登录系统的 cookie 中应该存储什么?

node.js - cookie node.js express

html - Facebook:由于 schemeless//iframe src for like buttons 导致的问题

php - 如何使用 jwt-auth 对 Facebook 用户进行身份验证?

php - 有没有办法在 SQL 全文搜索中比较特定字段?