2013-08-13 3 views
0

Я использую функцию последующего рубина на рельсах:Резо :: DNS - Как справиться с таймаутами, ошибками

def isGoogleEmailAddress?(email_domain) 
    Resolv::DNS.open({:nameserver=>["8.8.8.8"]}) do |r| 
     mx = r.getresources(email_domain,Resolv::DNS::Resource::IN::MX) 
     if mx.any? {|server| server.exchange.to_s.downcase.include? "google"} then 
     return true 
     end 
     return false 
    end 
    end 

Есть ли способ, чтобы справиться с вопросом, где Резо терпят неудачу, TimeOuts, ошибку и т.д.?

Благодаря

ответ

0

Посмотрите через documentation для класса Резо и добавить обработчик исключений для различных ошибок/исключений класса может поднять.

Их легко выбрать. Ищите классы, заканчивающиеся ошибкой и таймаутом.

Смежные вопросы