如何通过API从Facebook获取用户信息?

时间:2015-08-28 09:58:26

标签: ruby facebook api facebook-graph-api facebook-oauth

我正在开发API以将rails应用程序与Facebook集成。

我只从客户那里收到:


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

但是如果用户没有注册等我需要创建用户并将其保存到数据库中。我有模型userauthentication(用户有很多身份验证):


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应用已经创建,所有权限都已正确设置。

问题:

要将具有身份验证的用户保存到数据库中 - 我需要拥有所有字段。

问题:

如果我有provideruser_idaccess_token,   我怎样才能获得其他字段:   emailfirst_namelast_namerefresh_tokenexpires_at

我应该提出哪种API请求?

1 个答案:

答案 0 :(得分:0)

看起来你正在使用oauth2。如果是这样,您应该能够使用/me routegraph api overview page也非常有帮助。

你考虑过omniauth吗?设置和扩展身份提供商(如facebook,twitter或google)非常容易。如果通过facebook omniauth gem查看其他任何内容都无法帮助您。