2011-10-18 10 views
0

このルビスクリプトは実行されません。このスクリプトはコンパイルできませんが、なぜですか?

/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") 

これが修正されたら、私のpogramを実行する必要があります。助けてください!!

更新:今、それは示しています

/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 
+0

ここであなたの秘密鍵を真剣に公開していますか? さらにtwtという名前のCLI Twitterインターフェイスをインストールするtwtという名前の宝石が既にあることに注意してください。 'gem instal twt'でインストールしてください。 [そのソースについて](http://github.com/pbosetti/twt)のGitHubを参照してください。 – p4010

+0

あなたの2回目の '401:Read-only'エラーは、Twitterの開発者サイトに移動し、読み書きアクセスを有効にする必要があります。 –

答えて

1

は、あなたのTwitterのコンシューマキーとシークレットをリセットすることができ

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

とにかく、* sensitiveな情報をみんなに見せないほうがいいです:) – user973254

0

良い文字列に''単一引用符を追加します。

www.ning.com/help/?p=5551 
関連する問題