gpt4 book ai didi

facebook - 应用程序身份验证陷入无限重定向循环

转载 作者:行者123 更新时间:2023-12-01 06:42:14 24 4
gpt4 key购买 nike

我的应用程序陷入无限重定向循环,因为 $facebook->getUser();总是返回 0。我已经在 stackoverflow 和其他站点上阅读了许多关于类似问题的线程,但到目前为止还没有找到解决方案。我使用以下代码进行身份验证:

//
$facebook = new Facebook(array(
'appId' => APP_ID,
'secret' => APP_SECRET,
'cookie' => true,
));

// Get User ID
$user = $facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}

// Login or logout url will be needed depending on current user state.
if ($user) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl(
array (
"scope" => "user_likes,email,user_hometown,publish_stream",
"redirect_uri" => "https://www.facebook.com/pages/erdekelnehu/268142359907805?sk=app_175080802604575"
));
die ('<script type="text/javascript">top.location.href="' . $loginUrl . '";</script>');
}

经过一些调试后,我发现从 oauth 对话框重定向后,我的应用程序没有signed_request。 $_GET、$_POST 和 $_REQUEST 都是空数组。
$facebook->getLoginUrl 返回以下网址:
https://www.facebook.com/dialog/oauth?client_id=175080802604575&redirect_uri=https%3A%2F%2Fwww.facebook.com%2Fpages%2Ferdekelnehu%2F268142359907805%3Fsk%3Dapp_175080802604575&state=3c0d5802c89e913368ea814d49792454&scope=user_likes%2Cemail%2Cuser_hometown%2Cpublish_stream

我尝试在没有 redirect_uri 参数的情况下调用 $facebook->getLoginUrl,将其留给 fb 以找出正确的返回 url:
https://www.facebook.com/dialog/oauth?client_id=175080802604575&redirect_uri=https%3A%2F%2Ferdekelne.hu%2Fdroidtv%2F&state=3c0d5802c89e913368ea814d49792454&scope=user_likes%2Cemail%2Cuser_hometown%2Cpublish_stream

这两个网址不一样,而且都不起作用。第二个 url 重定向到一个 fb 错误页面,说发生了一些错误,“我们正在努力尽快解决这个问题。”
那么它可能是一个fb错误,还是我做错了什么?任何想法都将不胜感激,因为经过 6 个小时的调试,我已经完全用完了它们。

最佳答案

刚刚遇到了类似的问题,通过将目录名称(放置应用程序的位置)中的空格更新为与 URL 兼容的字符即 %20 来修复它。它就像一个魅力。

关于facebook - 应用程序身份验证陷入无限重定向循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9327585/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com