【问题标题】:Rails 5 devise omniauth-facebook Error: Sorry, something went wrongRails 5 设计了omniauth-facebook 错误:抱歉,出了点问题
【发布时间】:2016-10-27 16:55:16
【问题描述】:

我正在关注 Devise 的官方指南,从顶部到 this section。我的CALLBACK_URLhttp://localhost:3000/users/auth/facebook/callback,我认为这可能是问题所在,但我不确定。当我点击使用 Facebook 登录时,我遇到了以下错误:
抱歉,出了点问题。
在这个链接上:
https://www.facebook.com/v2.6/dialog/oauth?client_id=193217371133539&redirect_uri=https%3A%2F%2Flocalhost%3A3000%2Fusers%2Fauth%2Ffacebook%2Fcallback&response_type=code&scope=user%2Cpublic_repo&state=3913c12e0e4ce8b422732c9159c0fb1fb7351d100487849d

Rails 版本:Rails 5.0.0.1
Ruby 版本(使用 rbenv):ruby 2.3.1p112(2016-04-26 修订版 54768)[x86_64-darwin16]

【问题讨论】:

  • 你解决了吗?
  • @bodacious 是的,你还在纠结这个问题吗?
  • 现在已修复,谢谢。对我来说,问题在于设计配置中的 scope: 参数。
  • @bodacious 是一样的!

标签: ruby-on-rails facebook devise omniauth


【解决方案1】:

对于仍然遇到此问题的任何人,然后检查您的范围,如上面的 Akash 和 Bodacious 状态,并将其修改为如下所示:

scope: 'email', info_fields: 'email,name'

这将允许您获取电子邮件字段。

【讨论】:

    【解决方案2】:

    我发现了这个 https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview

    Facebook 返回无效的电子邮件

    自 2015 年 7 月 8 日 Facebook 更改为 api v2.4 后,您需要添加额外的 info_fields 才能获取电子邮件字段。

    config.omniauth :facebook, "APP_ID", "APP_SECRET", scope: 'email', info_fields: 'email,name'
    

    @techmonster 从这里找到解决方案

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-12
    • 2011-05-19
    • 2011-12-24
    • 1970-01-01
    相关资源
    最近更新 更多