首页 文章

Facebook登录消息:“URL已阻止:此重定向失败,因为重定向URI未在应用程序的客户端OAuth设置中列入白名单 . ”

提问于
浏览
86

重要的提醒:

如果您注册进行测试,请转到您的 Profiles 设置和 interests 添加 delete profile .

尝试使用Facebook登录我的website

我收到以下错误:

URL已阻止:此重定向失败,因为重定向URI未在应用的客户端OAuth设置中列入白名单 . 确保启用了客户端和Web OAuth登录,并将所有应用程序域添加为有效的OAuth重定向URI .

我在Facebook上的 settings (基础知识)是:

在高级选项卡中, Valid OAuth redirect URIs 设置为:

http://openstrategynetwork.com/_oauth/facebook?close

应用程序是 public .

更多设置(高级):
enter image description here

应用密钥和秘密是正确的 . 我正在使用Meteor及其帐户包 .

10 回答

  • 0

    您网站上的Facebook登录按钮链接到:

    https://www.facebook.com/v2.2/dialog/oauth?client_id=1500708243571026&redirect_uri=http://openstrategynetwork.com/_oauth/facebook&display=popup&scope=email&state=eyJsb2dpblN0eWxlIjoicG9wdXAiLCJjcmVkZW50aWFsVG9rZW4iOiIwSXhEU05XamJjU0VaQWdqcmF6SXdOUWRuRFozXzc0X19lbVhGWUJTZGNYIiwiaXNDb3Jkb3ZhIjpmYWxzZX0=

    注意: redirect_uri=http://openstrategynetwork.com/_oauth/facebook

    如果您改为将链接更改为:

    redirect_uri=http://openstrategynetwork.com/_oauth/facebook?close

    它应该工作 . 或者,您可以将Facebook链接更改为 http://openstrategynetwork.com/_oauth/facebook

    您还可以将 http://localhost/_oauth/facebook 添加到有效的重定向URI .

    Facebook要求您将重定向URI列入白名单,否则人们可以使用Facebook登录您的服务,然后将其访问令牌发送给攻击者的服务器!你不希望发生这种情况;]

  • 55

    正如提问者所写

    在高级选项卡中,有效OAuth重定向URI设置为:...

    我有同样的问题(将重定向url写入错误的输入字段)我想强调一下

    It's NOT

    Settings -> Advanced -> Share Redirect Whitelist
    

    but

    Facebook Login -> Settings -> Valid OAuth redirect URIs
    

    这本来可以节省我2个小时的反复试验 .

  • 0

    这对我有用 .

    redierct_url = http://127.0.0.1:8080/accounts/facebook/login/callback/

    点击Facebook按钮后,我从浏览器中获得了这一点,您将浏览器重定向到与Facebook API集成的链接,以便您获得重定向 . 对于我的情况,链接是从我获得redirect_url的地方 .

    https://www.facebook.com/dialog/oauth?client_id=...&scope=&response_type=code&state=...&redirect_uri=http://127.0.0.1:8080/accounts/facebook/login/callback/

    enter image description here

    enter image description here

  • 14

    确保“ App Domain ”和 Facebook Login => Valid OAuth redirect URIs . 你必须检查 wwwwithout www . 如果您使用www或不使用php,html,css文件和Fb应用程序设置中的所有URL,它会更好 .

    另一件事是,如果您使用的是"/"的URL结尾,则必须将该URL添加到 Valid OAuth redirect URIs 的应用设置中 . 示例: - https://www.example.com/index.php/如果您在重定向网址中使用此网址,则必须将其设置为应用设置 .

    希望这会有所帮助 .

  • 6

    对于我的节点应用,

    "facebook": {
            "clientID" : "##############",
            "clientSecret": "####################",
            "callbackURL": "/auth/facebook/callback/"
        }
    

    put callback Url relative

    我的OAuth重定向URI如下所示

    enter image description here

    在Facebook auth重定向URI结束时确保 "/"

    这些设置对我有用 .

  • 3

    在有效OAuth重定向URI中从 hauth.done=Facebook 更改为 hauth_done=Facebook 为我修复了它 .

  • 0

    尝试将http://openstrategynetwork.com/ sigin-facebook 添加到客户端OAuth设置有效重定向网址以及您自己的重定向网址 .

  • 35

    您网站的登录助手

    $ loginUrl = $ helper-> getLoginUrl('xyz.com/user_by_facebook/',$ permissions);

    并在Facebook应用程序仪表板中(在产品标签下: Facebook Login

    Valid OAuth redirect URIs 也应与xyz.com/user_by_facebook/相同

    正如前面提到的,从网上提出请求

  • 0

    我们遇到了同样的问题,这是一场噩梦 .

    • 确保您的App ID和密钥是正确的 . 如果您使用单独的开发,暂存和 生产环境 应用程序进行测试,则每个应用程序的应用程序ID和密钥都是不同的 . 这通常是个问题 .

    • 确保在应用配置文件中正确设置了回调网址(参见下文) . 然后在“Facebook登录" settings where it says "有效的OAuth重定向URI”下将其添加为相同的URL . 它应该看起来像这样(取决于您的环境):

    http://localhost/auth/facebook/callback http://staging.example.com/auth/facebook/callback http://example.com/auth/facebook/callback

    • 确保您的应用域设置为每个环境的正确域,包括"www"和"no-www" . Facebook还要求这些域名与您的网站或应用平台的网址相匹配 . 您必须选择“添加平台”才能添加此项 .
  • 9

    就我而言,我在Facebook Rails应用教程中整合了Facebook登录 . 我已将http://localhost:3000/adsf添加到我的有效OAuth重定向URI中,但Rails应用会将该网址打开为http://0.0.0.0:3000,因此会尝试重定向到http://0.0.0.0:3000/asdf . 将http://0.0.0.0:3000/asdf添加到有效OAuth重定向URI或导航到http://localhost:3000/asdf后,它按预期工作 .

相关问题