ruby on rails - Facebook Omniauth login not returning all fields -


i'm setting facebook provider follows:

provider :facebook, env['facebook_app_id'], env['facebook_app_secret'], scope: ['email', 'public_profile'] 

the authorization appears work fine, in facebook dialog mentions relevant requested permissions, i'm getting name , picture details coming callback url. omniauth.auth hash looks follows:

{ "provider":"facebook", "uid":<redacted> "info":{ "name":<redacted>, "image":<redacted>, "credentials":{ "token":<redacted>, "expires_at":1442319308, "expires":true }, "extra":{ "raw_info":{ "name":<redacted>, "id":<redacted> } } }

shouldn't seeing more fields here?

i had exact same problem. you've figured out, in case haven't... need make sure edit devise.rb in addition omniauth.rb

devise.rb should have:

config.omniauth :facebook, "your_facebook_id", "your_facebook_secret", scope: 'email,public_profile', info_fields: 'email, first_name, last_name' 

replacing whatever specific info_fields need (list of available here)


Comments