У меня есть приложение Rails, которое запрашивает сторонний веб-сервис. Я пытаюсь решить, как обрабатывать неправильный ответ (например, служба недоступна).
Два варианта, которые я рассматриваю:
1) WebService возвращает ноль при ошибке
response = WebService.query
if response
# Query was successful
else
# Invalid response
end
2) WebService создает исключение при ошибке
begin
response = WebService.query
rescue
# Invalid response
end
# Query was successful
Каковы преимущества и недостатки каждого подхода? Какой из них является «рельсовым путем»?
Большое спасибо.