У меня есть маршрут.
router.post('/add', async (req, res) => {
...
await timeIntervalCheck(req, res);
...
return res.status(200).json({
message: 'Product added'
});
}):
В нем я вызываю функцию timeIntervalCheck
Вот сама функция:
function timeIntervalCheck(req, res) {
let end_date = req.body.end_date;
let starting_date = req.body.starting_date;
let date = moment(end_date).diff(moment(starting_date), 'hours');
if (date < 2 || date > 168) {
return res.status(422).json({
err: 'The product cannot be published for less than 2 hours and longer than 7 days'
});
}
}
Есливремя продукта соответствует периоду, все работает хорошо, но как только период меньше или больше, появляется ошибка Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
.
Я понимаю его таким, какой он есть, потому что заголовки уже отправлены, когда срок более или менее, и я продолжаю пытаться отправить их снова.Как я могу убедиться, что нет такой ошибки?Как отправить сообщение об ошибке, чтобы больше и не выдавать, что продукт добавлен