Facebook 登录错误:无法加载 URL:此 URL 的域未包含在应用程序的域中

Posted

技术标签:

【中文标题】Facebook 登录错误:无法加载 URL:此 URL 的域未包含在应用程序的域中【英文标题】:Facebook Login error: Can't Load URL: The domain of this URL isn't included in the app's domains 【发布时间】:2018-09-09 20:34:29 【问题描述】:

我网站上的用户可以从这个页面使用 Facebook 登录:https://www.wonderweddings.com/login

但是,我遇到了错误

无法加载 URL:此 URL 的域不包含在应用程序的域中。为了能够加载此 URL,请将应用的所有域和子域添加到应用设置中的“应用域”字段。

我查看了这些帖子,看看我能做什么:How to turn off "Use Strict Mode for Redirect URIs" in facebook appFacebook OAuth "The domain of this URL isn't included in the app's domain"

所以我添加了我认为所有可能的 URL,但我一直收到同样的错误。我是否禁用或启用“强制 HTTPS”并不重要。我还尝试启用和禁用“嵌入式浏览器 OAuth 登录”。

https://www.wonderweddings.com/login.aspx
https://www.wonderweddings.com/login.aspx?loggedin=true&scope=email
https://www.wonderweddings.com/login
https://www.wonderweddings.com/login?loggedin=true
https://www.wonderweddings.com:443/login.aspx
https://www.wonderweddings.com:443/login.aspx?loggedin=true&scope=email
https://www.wonderweddings.com:443/login
https://www.wonderweddings.com:443/login?loggedin=true

我还测试了 appId 或 app secret 是否因保存而更改,但事实并非如此。

我有一个在另一个域上运行的站点的副本。此域连接到另一个应用程序,但除此之外具有类似的设置,只有这个其他应用程序仍然禁用设置“对重定向 URI 使用严格模式”。我的代码在那里完美运行。所以我确定这是我在 Facebook 上使用这些设置所缺少的东西。

我的设置:

我还能尝试什么?

【问题讨论】:

【参考方案1】:

您网站上的登录按钮当前正在加载此 URL: https://www.facebook.com/v2.8/dialog/oauth?client_id=143381855734017&redirect_uri=https://www.wonderweddings.com/login.aspx?loggedin=true&scope=email

Facebook 接收这些查询参数:

client_id = 143381855734017
redirect_uri = https://www.wonderweddings.com/login.aspx?loggedin=true
scope = email

所以他们期待的callback 可能是:https://www.wonderweddings.com/login.aspx?loggedin=true

请注意,为安全起见,callback 参数应进行 URL 编码,以便正确处理特殊字符(: / ? = 在 URL 中都有含义)

您应该更改您的网站,使其打开的链接是: https://www.facebook.com/v2.8/dialog/oauth?client_id=143381855734017&redirect_uri=https%3A%2F%2Fwww.wonderweddings.com%2Flogin.aspx%3Floggedin%3Dtrue&scope=email

【讨论】:

https://www.wonderweddings.com/login.aspx?loggedin=true 成功了【参考方案2】:

Facebook 于 2017 年 10 月更新。Use Strict Mode for Redirect URIs 现在始终在 Facebook 应用仪表板中启用。

我的解决方案与该更新有关:确保 Valid Oauth redirect URIs 输入包含与 redirect_uri 参数中提供的相同 URI。

【讨论】:

以上是关于Facebook 登录错误:无法加载 URL:此 URL 的域未包含在应用程序的域中的主要内容,如果未能解决你的问题,请参考以下文章

Facebook Twitter Google line 登录之 fb登录

Facebook Auth:无法加载 URL:此 URL 的域不包含在应用程序的域中

Facebook 登录当前无法在 Flutter 中用于此应用

Facebook 使用 HybridAuth 登录显示错误您无法直接访问此页面

Facebook Actionscript API 登录

Xcode facebook登录错误已关闭