трябва да върнете отговора си за грешка, след като възникне грешка или в противен случай вашата функция ще продължи да работи и ще изпълнява кода по-долу дори след грешката.
'/add/grade',
[
check('name', 'grade name is require')
.not()
.isEmpty()
],
auth,
admin,
(req, res) => {
const errors = validationResult(req);
if (!errors.isEmpty()) return res.status(400).send({ errors: errors.array() });
const grade = new Grade(req.body);
grade.save((err, doc) => {
if (err) return res.status(400).send({ success: false, err });
return res.status(200).send({
success: true,
grade: doc,
msg: 'Grade add successfully'
});
});
}
);
защото ако възникне грешка или валидирането е неуспешно, API изпраща отговора, но не се връща, така че функцията продължава да работи и изпълнява целия друг код под нея.
Както трябва да знаете, че при HTTP заявка отговорът може да бъде изпратен само веднъж и когато функцията отново изпрати отговора след грешка, тя ви показва, че не може да изпрати заглавки на отговора, след като са изпратени на клиента.
Надявам се това да помогне. УСПЕХ :)