2016-01-18 6 views
0

Actuellement en cours de projet J'utilise api_auth gem. Je frappe sur une API externe dans une fonction en faisant une demande signée. Actuellement, mon code ressemble à ceci. Je ne suis pas en mesure d'appliquer un code de gestion des erreurs à cette dernière instruction où j'exécute la demande. Aucune suggestion?Comment gérer les erreurs lors de l'utilisation de gem api_auth?

Répondre

0

Vous devez utiliser le bloc de démarrage de secours pour la gestion des exceptions.

begin 
    #TODO Exception occurring statement 
rescue 
    #Exception handling code 
end 

Comme vous devriez seulement sauver l'exception spécifique, plutôt que tous. Donc, comme votre code suggère que vous utilisez rest_client & api-auth gem donc de la documentation, vous pouvez obtenir la liste des exceptions que cette gemme augmenter.

Exemple - Pour rest_client, les exceptions ci-dessous doivent être gérées. (C'est probablement la solution de votre problème, il suffit de remplacer la dernière ligne comme indiqué ci-dessous)

begin 
    @signed_request.execute 
rescue RestClient::ExceptionWithResponse, URI::InvalidURIError, RestClient::InternalServerError => err 
    p err 
end 

Il y a quelques exceptions également générées par api-auth bijou comme aussi ApiAuth::ApiAuthError, ApiAuth::UnknownHTTPRequest si vous avez besoin de sauver toutes ces exceptions.

lien de référence -

http://www.rubydoc.info/gems/api-auth/1.4.0/

Merci!

+0

@wallydrag - Cette réponse est-elle utile? – RockStar