这个脚本无法编译,但为什么呢?

时间:2011-10-18 11:29:02

标签: ruby string twitter quotes double-quotes

此ruby脚本无法运行。它以

响应
/Users/superhappyfuntime/Desktop/twt.rb:25: undefined local variable or method `xsFEEyGKDPcnhJ5JoPJKg' for main:Object (NameError)
from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/twitter/configuration.rb:80:in `configure'
from /Users/superhappyfuntime/Desktop/twt.rb:24 

这是在用户输入之后。

我该如何解决?此外,如果它有帮助,这里是脚本:

#!/usr/bin/ruby

require "rubygems"
require "twitter"


puts "Welcome! TwitNIX (A.K.A. 'clt') posts to Twitter from the command line!"


puts "your token, please:"

please = gets.chomp




puts "...aaand your secret_token:"

secret_token = gets.chomp

puts "You're Done!"


Twitter.configure do |config|
 config.consumer_key = xsFEEyGKDPcnhJ5JoPJKg
 config.consumer_secret = **CENSORED**
 config.oauth_token = please 
 config.oauth_token_secret = secret_token
 end


client = Twitter::Client.new



puts "Now,  post an update:"

update = gets

client.update("update")


puts "Now, post an update:"

update = gets

client.update("update")

一旦修复,我的计划应该完成。请帮助!!

更新:现在显示:

/Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/faraday/response/raise_http_4xx.rb:12:in `on_complete': POST https://api.twitter.com/1/statuses/update.json: 401: Read-only application cannot POST (Twitter::Unauthorized)
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/response.rb:9:in `call'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/response.rb:62:in `on_complete'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/response.rb:8:in `call'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/request/url_encoded.rb:14:in `call'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/request/multipart.rb:13:in `call'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/faraday/request/twitter_oauth.rb:17:in `call'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/faraday/request/multipart_with_file.rb:18:in `call'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/connection.rb:207:in `run_request'
    from /Library/Ruby/Gems/1.8/gems/faraday-0.7.5/lib/faraday/connection.rb:94:in `post'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/twitter/request.rb:27:in `send'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/twitter/request.rb:27:in `request'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/twitter/request.rb:10:in `post'
    from /Library/Ruby/Gems/1.8/gems/twitter-1.7.2/lib/twitter/client/tweets.rb:45:in `update'
    from /Users/superhappyfuntime/Desktop/twt.rb:40

2 个答案:

答案 0 :(得分:1)

''单引号添加到字符串

Twitter.configure do |config|
 config.consumer_key = 'xsFEEyGKDPcnhJ5JoPJKg'
 config.consumer_secret = '**CENSORED**'

答案 1 :(得分:0)

更好的是,您可以重置您的Twitter消费者密钥和秘密。

www.ning.com/help/?p=5551