【发布时间】:2015-11-22 22:49:24
【问题描述】:
我正在开发 API 以将 rails 应用程序与 twitter 集成。
我只从客户那里收到:
{
provider: 'twitter',
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
Twitter 应用程序已创建,所有权限均已正确设置。
问题:
要将具有身份验证的用户保存到数据库中 - 我需要拥有所有字段。
问题:
如果我有provider、user_id 和access_token,
我怎样才能获得其他字段:
email、first_name、last_name、refresh_token 和 expires_at。
我应该提出哪个 API 请求?
附:我发现用gem "twitter"可以获取用户信息:
@client = Twitter::REST::Client.new do |config|
config.consumer_key = "TWITTER_API_KEY"
config.consumer_secret = "TWITTER_API_SECRET"
end
user_info = @client.user 'USER_ID'
它返回一个带有用户信息的对象,其中包含first_name 和last_names。
但我仍然不知道如何获取email、refresh_token 和expires_at 字段。 :(
【问题讨论】:
标签: ruby api twitter twitter-oauth