xJ'ai travaillé pendant des jours pour obtenir Twitter pour s'authentifier avec Ruby, mais je n'ai pas de chance.401 erreur avec Ruby OAuth pour Twitter
Ma première tentative a été quelque chose comme ceci:
class TwitterController < ApplicationController
def index
@callback_url = "http://dev.twipler.com:3000/twitter/auth"
@auth= TwitterOAuth::Client.new(:consumer_key => "xxx", :consumer_secret => "xxxxxxxxxxxxxxxxx")
@rtoken = @auth.request_token :oauth_callback => @callback_url
@token = @rtoken.token
@secret = @rtoken.secret
@link = @rtoken.authorize_url
session['token' ] = @token
session['secret'] = @secret
redirect_to @link
end
def auth
@auth.authorize_from_request(session[:rtoken], session[:rsecret], params[:oauth_verifier])
end
end
Et d'une manière très similaire, mais avec la pierre précieuse Twitter, et même avec le petit bijou OAuth directement. Peu importe ce que OAuth :: Consumer :: token_request meurt avec une erreur 401.
Alors, en désespoir de cause, je tenté de git clone Snitter, ajouter mes creds Twitter, et l'essayer, mais il meurt aussi avec un 401.
J'ai essayé d'utiliser localhost: 300/twitter/auth, http://dev.twipler.com:3000/twitter/auth, et un peu.ly pour chacun des anciens 2. Rien ne fonctionne.
Une aide?
EDIT: Bien sûr, j'oublierais de faire la chose la plus logique à faire et supprimer mes secrets. (Ils ont été changés;)).
J'ai vérifié mon temps quand j'ai découvert que cela pourrait être un problème, mais ça va. Mais je peux creuser à travers le débogage HTTP, merci! –
Regardez Net :: HTTP # set_debug_output. Trouver où dans la gemme OAuth l'installation HTTP est faite, puis sur l'objet HTTP, set_debug_output ($ stderr). La transaction HTTP complète apparaîtra dans le journal des erreurs de votre serveur Web (dans mon cas,/var/log/http/error_log, pour Apache). –
Génial, merci l'homme! –