2011-04-12 32 views
0

我在嘗試下面的示例代碼,並失敗(我使用的用戶名和密碼是有效的)。有什麼我錯過了,或者我可以嘗試一個更簡單的例子嗎?什麼是可能工作的twitter4r最簡單的示例程序?

testing.rb:

require('rubygems') 
gem('twitter4r','>=0.2.0') 
require('twitter') 

client = Twitter::Client.new(:login => 'uid', :password => 'password') 

ARGV.each do |a| 
    @message = "#{a}" 
end 

status = client.status(:post, @message) 

提示>紅寶石testing.rb 「測試」

/Library/Ruby/Gems/1.8/gems/twitter4r-0.6.0/lib/twitter/client/base.rb:120:in 
`raise_rest_error': Unauthorized 
(Twitter::UnauthorizedError) from 
/Library/Ruby/Gems/1.8/gems/twitter4r-0.6.0/lib/twitter/client/base.rb:125:in 
`handle_rest_response' from 
/Library/Ruby/Gems/1.8/gems/twitter4r-0.6.0/lib/twitter/client/base.rb:23:in `rest_oauth_connect' from 
/Library/Ruby/Gems/1.8/gems/twitter4r-0.6.0/lib/twitter/client/status.rb:42:in `status'  from testing.rb:11 

回答

2

@blueberryfields您需要使用OAuth的API,Twitter4R v0.5.0 +支持。這是由於Twitter.com授權截至2010年8月的OAuth身份驗證。通過Twitter4R,twitter.com或任何其他Twitter API客戶端不再支持提供用戶名的登錄名和密碼。

有關於這個博客使用OAuth與Twitter4R一個夢幻般的教程: http://blog.monnet-usa.com/?p=342

HTH,

@SusanPotter - Twitter4R

的作者

PS還檢查了@ t4ruby的更新Twitter4R

0

微不允許基本認證(用戶名+密碼)登錄通過其API了。

您應該尋找一種支持基於OAuth的登錄的方法。

您需要爲您的應用程序獲取OAuth密鑰,可以從以下鏈接完成。第一個鏈接允許您註冊一個新的應用程序,第二個鏈接允許您查看您已註冊的應用程序。

New Twitter Application @ dev.twitter.com
Twitter Applications (Existing) @ dev.twitter.com

甲更深入的指南可在下面的鏈接。您需要閱讀此內容,因爲在您使用twitter API之前,OAuth需要至少兩個步驟才能進行身份驗證。

Authenticating Requests with OAuth

相關問題