参数app_id是{{url}}/api/v1/auth/facebook所必需的
问题描述:
我试图访问邮递员中的{{url}}/api/v1/auth/facebook,但是我得到以下错误:参数app_id是{{url}}/api/v1/auth/facebook所必需的
"The parameter app_id is required"
里面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,但仍然以相同的错误结束。
答
你试过把它关掉再重新打开吗?你的Rails应用程序是。
是的,它的工作。我在这个问题上浪费了几个小时:( – vipin8169
很酷!我以为是这个问题。我们都在那里,很遗憾... – SacWebDeveloper
既然已解决,请接受答案并关闭。谢谢。 – SacWebDeveloper