2011-09-01 15 views
7

Mi chiedevo in che modo è possibile rilevare un'eccezione di koala oauth (ad esempio la reimpostazione della password utente).Come catturare Koala :: Facebook :: APIError OAuthException o reimpostazione della password utente

In questo momento questo è quello che ho/uso finora:

rescue_from Koala::Facebook::APIError do 
    # redirect to fb auth dialog 
end 

ma questo cattura tutti gli errori .. come posso fare che solo con OAuth o solo reimpostazione della password?

EDIT:

scoperto una soluzione più esplicito al problema:

rescue_from Koala::Facebook::APIError do |exception| 
    if exception.fb_error_type == 190 
    # password reset - redirect to auth dialog 
    else 
    raise "Facebook Error: #{exception.fb_error_type}" 
    end 
end 

grazie in anticipo oliver

risposta

2

vi mostrerò un certo codice che ho, e come riesco a cattura e salvataggio dalle eccezioni di Koala:

def post_message_facebook_wall(message) 
    unless self.token.nil? 
     begin 
     facebook_graph = Koala::Facebook::GraphAPI.new(self.token) 
     object_from_koala = facebook_graph.put_wall_post(message) 
     rescue Koala::Facebook::APIError => exc 
     logger.error("Problems posting to Facebook Wall..."+self.inspect+" "+exc.message) 
     end 
    end 
end 

Th è rescue Koala::Facebook::APIError => exc dovrebbe fare il trucco.

Problemi correlati