【问题标题】:Missing client_id with Devise and Facebook-OmniauthDevise 和 Facebook-Omniauth 缺少 client_id
【发布时间】:2012-06-05 04:58:27
【问题描述】:

这是我的 Facebook 初始化程序/devise.rb 代码:

require "omniauth-facebook"
config.omniauth :facebook, "app_key", "app_secret"

我已经添加了:

devise :omniauthable 进入我希望能够使用 Facebook 的模型。

当我点击这个链接时:

<%= link_to "Sign in with Facebook", user_omniauth_authorize_path(:facebook) %>

我明白了:

带有消息的 OAuthException"message": "Missing client_id parameter.",

请注意,app_key 和 app_secret 是我可以在我的 Facebook 应用上看到的,但我没有放在这里。

在单击“使用 facebook 登录”链接时重定向的 URL 上,我看到 client_id 参数为空:

https://graph.facebook.com/oauth/authorize?response_type=code&client_id&

但是为什么呢?

【问题讨论】:

  • 你做了什么来解决这个问题?我遇到了同样的问题...

标签: facebook ruby-on-rails-3 devise omniauth


【解决方案1】:

将此添加到您的 devise.rb 文件中

require "omniauth-facebook"
config.omniauth :facebook, "APP_ID", "APP_SECRET"

不要忘记重新启动您的应用以使更改生效。

【讨论】:

    【解决方案2】:

    我从来没有直接用 devise 做过。但这也适用于设计。

    Omniauth podcast on RailsCasts

    或者,如果您仍想坚持使用 devise 内置的 omiauth,请尝试找到一种方法为其提供应用 ID 和应用密码。我很确定您必须在 config/initializers/ 的 devise.rb 中提供它

    【讨论】:

    • 在你的 devise.rb 配置文件中添加这个
    猜你喜欢
    • 1970-01-01
    • 2014-05-30
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-26
    • 1970-01-01
    • 2015-11-26
    相关资源
    最近更新 更多