【发布时间】:2017-10-24 10:23:53
【问题描述】:
简单地说,我正在尝试使用这些 ruby 代码发布推文:
require 'Twitter'
client = Twitter::REST::Client.new do |config|
config.consumer_key = "my_key"
config.consumer_secret = "my_secret_key"
config.access_token = "my_token"
config.access_token_secret = "my_secret_token"
end
client.update("I'm tweeting with a @gem!")
我在 Windows 10 上使用 64 位 ruby 2.3.0 和适当的 64 位开发工具包。
但是,“on_complete”:错误的身份验证数据。 (Twitter::Error::BadRequest) 看起来像这样:
C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/response/raise_error.rb:13:in `on_complete': Bad Authentication data. (Twitter::Error::BadRequest)
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/response.rb:9:in `block in call'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/response.rb:61:in `on_complete'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/response.rb:8:in `call'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/request/url_encoded.rb:15:in `call'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/request/multipart.rb:14:in `call'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/request/multipart_with_file.rb:21:in `call'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/rack_builder.rb:139:in `build_response'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/connection.rb:377:in `run_request'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/faraday-0.11.0/lib/faraday/connection.rb:177:in `post'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/request.rb:33:in `perform'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/utils.rb:50:in `perform_request'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/utils.rb:72:in `perform_request_with_object'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/utils.rb:64:in `perform_post_with_object'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib/twitter/rest/tweets.rb:158:in `update!'
from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/twitter-6.1.0/lib /twitter/rest/tweets.rb:128:in `update'
from om_tweet.rb:11:in `<main>'
提前感谢您的时间和建议!
【问题讨论】:
-
您是否在 Twitter 帐户上为您的应用启用了“写入”权限?
-
是的,权限当前设置为读取、写入和直接发送消息。
-
你能阅读推文吗? (密钥/秘密/令牌绝对正确吗?)
-
我正在关闭这个帖子。将密钥/秘密/令牌粘贴到我的代码中后,其中包含空格。感谢您的帮助,汤姆!谢谢!
标签: ruby-on-rails ruby ruby-on-rails-3 twitter faraday