2013-04-08 54 views
0

我使用twitter gem和amniauth一起獲取用戶的推文,並將它們顯示在我的主頁上。但是,當我嘗試從命令行中獲取推文時,我收到了'錯誤的身份驗證數據'錯誤。在Rails應用上驗證Twitter

的Gemfile:

gem 'omniauth' 
gem 'omniauth-twitter' 
gem 'twitter' 

Twitter.rb在配置/初始化:

Twitter.configure do |config| 
    config.consumer_key = 'key' 
    config.consumer_secret = 'secret' 
    config.oauth_token = 'token' 
    config.oauth_token_secret = 'secret' 
end 

omniauth.rb在配置/初始化:

require 'omniauth-twitter' 
config.omniauth :twitter, 'key', 'secret' 

我仔細檢查過我的鑰匙和密碼,但我無法讓它運行。我正在使用Spree。這裏的錯誤:

irb(main):001:0> require 'twitter' 
=> true 
irb(main):002:0> Twitter.user_timeline(213747670)    
Twitter::Error::BadRequest: Bad Authentication data 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/response/raise_error.rb:21:in `on_complete' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/response.rb:9:in `block in call' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/response.rb:63:in `on_complete' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/response.rb:8:in `call' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/request/url_encoded.rb:14:in `call' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/request/multipart.rb:13:in `call' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/request/multipart_with_file.rb:14:in `call' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/connection.rb:247:in `run_request' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/faraday-0.8.7/lib/faraday/connection.rb:100:in `get' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/client.rb:81:in `request' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/client.rb:64:in `get' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/api/utils.rb:51:in `objects_from_response' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/api/utils.rb:42:in `objects_from_response_with_user' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter/api/timelines.rb:53:in `user_timeline' 
    from /usr/local/lib64/ruby/gems/1.9.1/gems/twitter-4.6.2/lib/twitter.rb:52:in `method_missing' 
    from (irb):2 

感謝您的幫助。

回答