让我首先说,我已经寻找这个问题的答案很长一段时间了……

我试图设置Facebook OAuth与我的应用程序,这是在我的机器上本地开发。Facebook授权的一切都很完美,直到我从使用localhost转移到另一个域名(仍然是我机器的本地域名)。现在我得到如下错误。

不能加载URL:这个URL的域不包括在应用程序的 域。要加载此URL,请添加所有域和子域 在你的应用程序设置的应用程序域字段。

我的hosts文件包含127.0.0.1 domain.dev(完美工作)

我的重定向在我的应用程序(使用Socialite)是http://domain.dev/auth/facebook/callback

在我的Facebook应用程序设置…

我的应用域名是Domain .dev 我的网站网址是http://domain.dev/ 我的有效OAuth重定向uri是 http://domain.dev/auth/facebook/callback

出现错误消息时的URL是..

https://www.facebook.com/v2.5/dialog/oauth?client_id=XXXXXXXXXXXXXXX&redirect_uri=http%3A%2F%2Fdomain.dev%2Fauth%2Ffacebook%2Fcallback&scope=email&response_type=code&state=0ztcKhmWwFLtj72TWE8uOKTcf65JmePtG95MZLDD

我不知道问题出在哪里。

屏幕截图1

屏幕截图2


当前回答

Facebook最近禁用了“使用严格模式重定向URI”的切换按钮,所以当你点击登录按钮时,你需要添加确切的URI。对于我的案例,它如截图所示。 它为我解决了这个问题:)

其他回答

不能加载URL:这个URL的域不包括在应用程序的 域。要加载此URL,请添加所有域和子域 在你的应用程序设置的应用程序域字段。

我今天遇到了这个问题,我发现Facebook的文档和SDK对其他开发者是不尊重和傲慢的。

除了在两个不同的位置有“应用域名”而没有太多信息(如果你添加了一个“web”平台,则为3),你还需要去应用产品/ facebook登录/设置,并在有效OAuth重定向uri下添加你的重定向URL

该错误没有说明oauth设置。

大多数情况下,它发生在没有插入正确有效的OAuth重定向URL在FB仪表板的产品部分。我建议你跟着我的咆哮走

01.检查应用程序的基本设置是好的波纹图与你

02.检查是否添加了产品

如果不是,你可以很容易地添加登录产品点击+正弦,如我所示在下面。

如果是,就进入了产品设置。

03.检查是否提供了有效的OAuth重定向URL

它简单的意思是登录后应该做什么。它就是你的回调URl。你可以看到在我的波纹图我已经添加了几个重定向url。

还有问题吗看我的视频> https://www.youtube.com/watch?v=mdhubrzV5y8&t=3s

我也有同样的问题.....issu是在PHP SDK 5.6.2版本,修复是编辑以下文件:

facebook\src\Facebook\Helpers\FacebookRedirectLoginHelper.php

改变这一行

$redirectUrl = FacebookUrlManipulator::removeParamsFromUrl($redirectUrl,['state','code']);

to

$redirectUrl = faceboolmanipulator:removeParamsFromUrl($redirectUrl,['state,'code,'enforce_https]);

我也遇到了同样的问题,它来自一个错误的client_id / Facebook应用程序ID。

你把脸书的应用程序调成“公开”还是“在线”了?当你这样做时,Facebook会创建一个带有新应用ID的新应用。

您可以比较url中的“client_id”参数值与Facebook仪表板中的参数值。

在我的情况下,我通过添加完整的URL解决了这个问题,而不仅仅是facebook要求的域名。我希望他们能重新命名,以便更清楚地说明。 所以有效的OAuth重定向uri应该是这样的: 前:https://www.mobile-battles.com 后:https://www.mobile-battles.com/register