2011-05-18 22 views
2

在我User模型中,我有以下代码:只得到响应代码,而不是实际的响应,从OAuth的::的accessToken

def twitter_client 
    OAuth::AccessToken.new(twitter_oauth, self.access_token_key, self.access_token_secret) 
end 

def twitter_oauth 
    OAuth::Consumer.new(Twitter::Login.consumer_key, Twitter::Login.secret, :site => Twitter::Login.site) 
end 

这样我可以调用用户#twitter_client像这样:

current_user.twitter_client.post('/statuses/update.xml', {'status' => 'foooo', 'Accept' => 'application/xml'}) 

这种运作良好,而实际上并更新状态,并返回如下:

#<Net::HTTPOK 200 OK readbody=true> 

这对于更新状态确实不是问题。然而,当我想获得最新的鸣叫,我得到的是一个响应代码的对象,而不会从响应的实际内容:

current_user.twitter_client.get('/statuses/user_timeline.xml', {'Accept' => 'application/xml'}) 
=> #<Net::HTTPOK 200 OK readbody=true> 

这返回的对象仅仅是Net::HTTPOK一个实例,并且不包含鸣叫的数据。

如何获取推文数据?

回答

7

怎么样...?

res = current_user.twitter_client.get('/statuses/user_timeline.xml', {'Accept' => 'application/xml'}) 

puts res.body 
+0

谢谢。对不起,答案是如此明显! – user94154 2011-05-27 21:37:35

+1

明显比晦涩难懂! (至少你有机会:) – iain 2011-05-28 07:40:34