@Narts

Нормальная ли практика создавать свой класс ошибки?

привет! у меня есть бекенд на ноде, экспресс js, паттерн - mc, где controller это роут, а model - взаимодействие с бд.
внутри моделей делаю некоторые базовые проверки и в случае чего выбрасываю throw new Error(description). этот Error уже ловится в контроллере и возвращает юзеру дефолтную ошибку по типу "Что-то пошло не так".

хочу возвращать юзеру причину ошибки, но без лишней информации (например, если бд кинет Error, то такое не надо возвращать юзеру, а надо "Что-то пошло не так").

нормальная ли практика сделать свой класс ошибки, например ApiError и выбрасывать ее из модели в контроллер через throw new ApiError. А в контроллере уже проверять, error instance of ApiError ? error.message : 'Что-то пошло не так'
  • Вопрос задан
  • 238 просмотров
Пригласить эксперта
Ответы на вопрос 2
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
А ещё лучше не изобретать свой велосипед формат ошибки, а использовать какой-нибудь мало-мальский стандарт типа problemJson.
Ответ написан
Комментировать
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Каждый делает как хочет.

В моей практике было что централизованно оборачивали ответы на ошибки что то типа
"errorcode": "200",
"error": "page generated"


бывало что отдавали коды 200, 403,404,500

Всяко бывало
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы