2011-04-12 19 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

相关问题