2015-08-28 2 views
0

Я разрабатываю API для интеграции приложения rails с Facebook.Как получить информацию о пользователе из facebook через API?

Я получаю от клиента только:

 

{ 
    provider:  'facebook', 
    user_id:  'USER_ID', 
    access_token: 'ACCESS_TOKEN' 
} 
 

Но мне нужно создать пользователя и сохранить его в базу данных, если пользователь не зарегистрирован и т.д. Я есть модели user и authentication (пользователь имеет много аутентификации):


class User 
    validate :first_name, :last_name, :email, 
      presense: true 

    has_many :providers 
endd 

class Authentication 
    validate :provider, :user_id, :access_token, :refresh_token, :expires_at, 
      presense: true 

    belongs_to :user 
end 

Facebook приложение уже создано и все разрешения настроены правильно.

Проблема:

Для сохранения пользователя с проверкой подлинности в БД - мне нужно, чтобы все поля.

Вопрос:

Если у меня есть provider, user_id и access_token, как я могу получить дополнительные поля: email, first_name, last_name, refresh_token и expires_at.

Какой запрос API я должен сделать?

ответ

0

Похоже, вы используете oauth2. Если это так, вы должны иметь возможность использовать /me route. graph api overview page также очень полезен.

Вы считали omniauth? Это очень легко настроить, а также расширить поставщиков идентификационных данных, таких как facebook, твиттер или Google. Если ничто иное не просматривает facebook omniauth gem, это может помочь вам.

Смежные вопросы