Я создаю бэкэнд-сервер REST Api в Node.js, используя express, и пытаюсь понять, каков «правильный» способ сообщить клиенту, что произошла ошибка, и не продолжать работу с промежуточным ПО
В моем текущем коде ...
Если у меня есть маршрут router.post('/test', [first, second]);
Если ошибки нет, я запускаю return next()
в first
для запуска вторая функция, а затем return res.sendStatus(200)
в second
Это правильно, верно?
Но теперь допустим, что ошибка возникает в first
, имеет ли смысл делать return res.sendStatus(500)
или return next(new Error('Error has occurred'))
Или я должен сделать
res.sendStatus(500)
return next(new Error('error occurred'))
Или есть способ просто отправить statusCode внутри return next(error)
Насколько я понимаю, использование return
останавливает продолжение промежуточного программного обеспечения, так что я не уверен, как это сделать?
Стоит ли использовать next()
для продолжения и никогда не использовать next(error)
?