我正在使用omniauth 通过twitter 对用户进行身份验证。omniauth 提供访问令牌。现在我想向 twitter 发送 get 或 post 请求。我不想使用任何宝石。我想处理 net::http。
即使在 twitter api 文档中!我无法为此找到一个好的教程
有人可以帮忙吗?谢谢
我正在使用omniauth 通过twitter 对用户进行身份验证。omniauth 提供访问令牌。现在我想向 twitter 发送 get 或 post 请求。我不想使用任何宝石。我想处理 net::http。
即使在 twitter api 文档中!我无法为此找到一个好的教程
有人可以帮忙吗?谢谢
这正是您所需要的,因此,既然您已经从omniauth 获得了令牌和秘密,现在您将使用它:
def prepare_access_token(oauth_token, oauth_token_secret)
consumer = OAuth::Consumer.new("APIKey", "APISecret", { :site => "https://api.twitter.com", :request_token_path => '/oauth/request_token', :access_token_path => '/oauth/access_token', :authorize_path => '/oauth/authorize', :scheme => :header })
token_hash = { :oauth_token => oauth_token, :oauth_token_secret => oauth_token_secret }
access_token = OAuth::AccessToken.from_hash(consumer, token_hash )
access_token
end
然后,例如,您发布一条推文:
msg = {'status' => 'Hey look I can tweet via OAuth!'}
access_token = prepare_access_token(token, secret)
response = access_token.post('https://api.twitter.com/1/statuses/update.json', msg, { 'Accept' => 'application/xml' })
阅读链接上的文章以获取更多信息。