2013-11-27 13 views
10

Viene visualizzato un errore con uno script Ruby che utilizza la gemma "twitter". La parte del mio script che sta producendo l'errore èErrore con l'API di Twitter Ruby

require 'twitter' 
require 'net/http' 
require 'json' 

#### Get your twitter keys & secrets: 
#### https://dev.twitter.com/docs/auth/tokens-devtwittercom 
Twitter.configure do |config| 
    config.consumer_key = 'xxxxxxx' 
    config.consumer_secret = 'xxxxxxx' 
    config.oauth_token = 'xxxxxx' 
    config.oauth_token_secret = 'xxxxxxx' 
end 

L'errore dice undefined method 'configure' for Twitter:Module (NoMethodError) Tuttavia, il 'Twitter' e 'gemme' JSON sono entrambi nel mio Gemfile quindi non sono sicuro perché questo metodo sarebbe definito .

+0

quale versione del gioiello sono stai usando? Nella documentazione è indicato che la configurazione viene eseguita tramite il metodo Twitter :: REST :: Client.new – Zippie

+0

Nel file Gemfile.lock si dice "twitter (5.0.0)" – user1893354

+1

seguire la documentazione da qui: https: // github.com/sferik/twitter – Zippie

risposta

17

Stai facendo il "vecchio" modo. A partire dalla versione 5, la configurazione globale non è più disponibile. Quindi, in pratica è necessario passare i parametri di configurazione quando si inizializza un client.

Ad esempio:

client = Twitter::REST::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 

E poi basta usare quel cliente per fare domande, come ad esempio:

client.sample do |tweet| 
    puts tweet.text 
end 

Per ulteriori informazioni basta fare riferimento a Sferik's Twitter Gem

+3

Se volessi ottenere un elenco dei 4 tweet più recenti, come dovrei farlo? Non riesco ad accedere al client in nessuno dei controller poiché "client" mi riceve un errore NameError - questa documentazione mi sta frustrando. Non visualizzano alcun codice controller ... – Peege151

Problemi correlati