मैं अपने रेल ऐप में फेसबुक ओथ और डेविस का उपयोग कर रहा हूं। मैं सफलतापूर्वक फेसबुक लॉगिन पेज पर ले गया, लेकिन फिर कॉलबैक कार्रवाई पर एक त्रुटि प्राप्त करें। इसे मेरी कॉलबैक कार्रवाई में nil
पर request.env["omniauth.auth"]
पर वापस ट्रैक किया गया।रेल, डेविस और फेसबुक ओथ: request.env ["omniauth.auth"] शून्य
Gemfile:
gem 'devise'
gem 'omniauth'
gem 'omniauth-facebook'
मार्गों:
devise_scope :user do
get '/users/auth/facebook/callback', to: 'users/omniauth_callbacks#facebook'
end
resources :users
devise_for :users, path: '', path_names: { sign_up: 'register', sign_in: 'login', sign_out: 'logout'}, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }
initializers/devise.rb:
config.omniauth :facebook, Figaro.env.facebook_key, Figaro.env.facebook_secret,
scope: 'email,public_profile',
callback_url: Figaro.env.facebook_callback_url
User.rb:
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :confirmable, :validatable,
:omniauthable, :omniauth_providers => [:facebook]
omniauth_callbacks_controller.rb:
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
def facebook
@user = User.from_omniauth(request.env["omniauth.auth"])
request.env["omniauth.auth"] ## <<=== this is nil
किसी भी विचार क्यों मेरे request.env["omniauth.auth"]
nil
लौटा रहा है?
समाधान मिला अब तक का आनंद लें? –