【发布时间】:2016-01-06 19:51:30
【问题描述】:
我正在使用 twitter gem 连接到 twitter 流 api。
当我在控制台中以 sublime text 2 运行代码时,一切正常,并且正在从 api 获取结果。但是,当我尝试从终端运行脚本时,出现此错误:
/Users/username/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0/gems/twitter-5.15.0/lib/twitter/streaming/connection.rb:16:in `initialize': Can't assign requested address - connect(2) for "199.16.156.217" port (Errno::EADDRNOTAVAIL)
我只使用来自 twitter gem 的 github 页面的示例代码。 https://github.com/sferik/twitter
client = Twitter::Streaming::Client.new do |config|
config.consumer_key = "YOUR_CONSUMER_KEY"
config.consumer_secret = "YOUR_CONSUMER_SECRET"
config.access_token = "YOUR_ACCESS_TOKEN"
config.access_token_secret = "YOUR_ACCESS_SECRET"
end
client.sample do |object|
puts object.text if object.is_a?(Twitter::Tweet)
end
有谁知道我为什么会收到此错误,以及如何解决此问题?
【问题讨论】:
-
您是否添加了您的开发者令牌/密钥? :) 我只是将您的代码复制并粘贴(当然是我自己的令牌、秘密等)到我的 ruby shell 中,它工作正常。
-
是的,我有,我不认为代码有什么问题,因为它在 sublime text 2 控制台中工作。
-
这里不适合,所以,我将我的代码添加到答案部分。