exception, вот мне это не нравится, сейчас думаю при таких случаях вернуть шаблонный ответ типа такого
return {
data: null,
message: 'User not found',
status: 400
}
потом его в интерсепторе ловить и отправить норм ошибку а не exception.
Так сделать вообще правильно? если нет то как без exception обработать потенциальную ошибку в сервисах?
https://docs.nestjs.com/exception-filters#exception-filters-1
Он есть уже у меня в системе. Вопрос был как вернуть нормальную ошибку из сервиса а не exception. А вот этот фильтр работает когда я верну exception
А в чём проблема, собственно? Вместо throw сделать return какой-нибудь функции-билдера ответа, в другом месте вызывать функцию-парсер этого ответа, который кинет throw. Но только вот вопрос - нужны ли такие извращения...
В другом месте не кидать exception а вернуть респонс со статусом ошибки.
Т.е. вне сервиса будет устанавливаться статус, и всё?
Это чтобы сервис не возвращал/не бросал никакой exception
Всё равно не вижу проблемы)
Ну короче я не хочу бросать ошибку когда ошибка явна, хочу просто всегда вернуть из сервиса ответ, а не бросать в нем exception
Так а в чём проблема то заключается?
Вот не могу найти слой где обработать ответ от сервиса (слой отличной от контроллера)(глобалный слой )
Аа, понял теперь. Интерцептор на контроллере только, больше негде. Ну можно кастомный декоратор написать на метод, но опять же в контроллере
В сервисах возвращаю всегда return {data: shto_to, status: kakoy_to} Таким образом я всегда верну одинаковый ответ. И потом остается просто response.status(status).json(data)
Обсуждают сегодня