【发布时间】:2023-03-18 18:10:01
【问题描述】:
我正在使用 PHP SDK (v5.0) 将用户登录到我的网站,使用 Facebook 文档中的基本代码(我为我的网站填写和/或更改了必要的部分):
# login.php
$fb = new Facebook\Facebook([
'app_id' => FACEBOOK_APP_ID,
'app_secret' => FACEBOOK_APP_SECRET,
'default_graph_version' => FACEBOOK_GRAPH_API_VERSION,
]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email', 'user_likes']; // optional
$loginUrl = $helper->getLoginUrl('http://{your-website}/login-callback.php', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
我有一个登录回调文件设置,可以将用户登录到我的站点,它可以在 iOS 以外的任何操作系统上完美运行。笔记本电脑/台式机很好,Android 工作正常,等等。只是在 iOS 上(我尝试在 iOS 9 中使用 Chrome 和 Safari),而不是在登录后重定向回登录回调,而是将它们保留在 Facebook 上并说“请关闭此选项卡继续访问{网站}。”所以基本上,iOS 上的用户在登录 Facebook 后永远不会返回我的网站。
如果我关闭选项卡(如错误消息所述),我显然已离开 Facebook 和我的网站,必须重新开始。如果我点击返回按钮,我会返回我的网站,但我没有登录。
有人知道为什么会这样吗?我正在使用 PHP 5.5。
附:这不仅仅发生在我的网站上。我刚刚尝试在我的 iPhone 上使用 trulia.com 上的 Facebook 登录,同样的情况发生了!任何帮助/链接/文档将不胜感激。
【问题讨论】:
-
我在我们自己的网站上也看到过这个(在 Rails 上运行 ruby),但仅限于 iOS 上的 Chrome。 Safari 似乎工作正常。也很好奇为什么会发生这种情况,以及它是否是最近出现的问题。
-
你是对的!它只发生在 iOS 上的 Chrome 中。希望有人对为什么会发生这种情况有所了解。
-
嗨,Micah,你不是一个人有这个问题。 developers.facebook.com/bugs/754602368002821
-
五年后...我刚刚在使用 Android 10 时在 Facebook 应用上遇到了这个问题只是帮助我,还有其他遇到这个令人沮丧的问题的人。在我的情况下,我在我的 Facebook 提要中输入了一篇很长的帖子。会不会是 FB 应用程序中的缓冲区溢出?关闭标签意味着我在这个星球上剩下的几年中失去了大约 30 分钟。 (我今年 65 岁,患有 RSI 和一些关节炎,这让我打字很痛苦)。我会记得先草拟我的长篇文章