2011-09-01 12 views
7

मैं सोच रहा था कि मैं कोआला ओथ अपवाद कैसे प्राप्त कर सकता हूं (उदाहरण के लिए उपयोगकर्ता पासवर्ड रीसेट)।कोआला को कैसे पकड़ें :: फेसबुक :: APIError OAuthException या उपयोगकर्ता पासवर्ड रीसेट

अभी इस मैं क्या है/अब तक का उपयोग करें:

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

लेकिन यह सभी त्रुटियों को पकड़ता है .. मैं कैसे है कि बस OAuth या केवल पासवर्ड के साथ रीसेट कर सकते हैं?

संपादित करें:

समस्या के लिए एक अधिक स्पष्ट समाधान पता चला:

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 

अग्रिम धन्यवाद ओलिवर

उत्तर

2

मैं आपको कुछ कोड मैं है, और मैं कैसे लेते हैं दिखाएगा कोआला अपवादों से पकड़ो और बचाव:

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 

था rescue Koala::Facebook::APIError => exc चाल चलाना चाहिए।

संबंधित मुद्दे