{{url}} / api / v1 / auth / facebook需要参数app_id

时间:2016-03-03 15:21:18

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

我正在尝试访问邮递员中的{{url}} / api / v1 / auth / facebook,但我收到以下错误:

  

"参数app_id是必需的"

devise.rb内,我有以下配置设置config.omniauth :facebook, Rails.application.secrets.facebook_key, Rails.application.secrets.facebook_secret

内部config/initializers/omniauth.rb

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :facebook, Rails.application.secrets.facebook_key, Rails.application.secrets.facebook_secret, scope: 'email,age,gender'
end

我的佣金路线如下:

            GET    /api/v1/auth/:provider/callback(.:format)                  devise_token_auth/omniauth_callbacks#omniauth_success
            GET    /omniauth/:provider/callback(.:format)                     devise_token_auth/omniauth_callbacks#redirect_callbacks
omniauth_failure    GET    /omniauth/failure(.:format)                                devise_token_auth/omniauth_callbacks#omniauth_failure
            GET    /api/v1/auth/:provider(.:format)                           redirect(301)

我正在使用以下宝石

gem 'devise_token_auth'
gem 'omniauth'
gem 'omniauth-facebook'

在用户模型中,是以下代码:

devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable, 
          :lockable, :timeoutable, :omniauthable, :omniauth_providers => [:facebook]

根据文档here,我不应该发送任何参数明确。 我已经在ENV变量中定义了app_id,但我仍然遇到此错误。 我也尝试用它们的实际值替换参数Rails.application.secrets.facebook_key,但仍然以相同的错误结束。

1 个答案:

答案 0 :(得分:1)

您是否尝试将其关闭并再次打开?您的rails应用程序是。