Я создал свой первый сервис API, используя Grape GEM и Rails. API работает отлично, но я борюсь с обработкой ошибок, и поиск ценных руководств не дал результатов.
В учебнике, которому я следовал, единственное освещение обработки ошибок, которому они следовали, было следующим:
rescue_from ActiveRecord::RecordNotFound do |e|
error!(message: e.message, status: 404)
end
rescue_from ActiveRecord::RecordInvalid do |e|
error!(message: e.message, status: 422)
end
Два вопроса привели меня к выводу, что этого недостаточно:
- Мне выдается ошибка, указывающая на следующее: «по сравнению с не классом/модулем» для ActiveRecord::RecordInvalid
- Когда я отправляю запрос API, который соответствует правилам API, но не проходит проверку модели, запрос просто зависает..т.е. Ничего не произошло. Я вижу ответ в журнале моего локального сервера (т. Е. Электронная почта уже существует), но в Postman & и swagger он просто продолжает загружаться без ответа.
Может ли кто-нибудь указать мне учебник, полностью посвященный обработке исключений Grape? Я так запутался в отношении обработки проверки модели через вызовы API и т. Д., И мог бы получить некоторые рекомендации.