त्रुटि होने पर आपको अपनी त्रुटि प्रतिक्रिया वापस करने की आवश्यकता है या अन्यथा आपका फ़ंक्शन त्रुटि के बाद भी नीचे दिए गए कोड को चालू और निष्पादित करता रहेगा।
'/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'
});
});
}
);
क्योंकि अगर कोई त्रुटि होती है या कोई सत्यापन विफल हो जाता है तो एपीआई प्रतिक्रिया भेजता है लेकिन वापस नहीं किया जाता है, इसलिए फ़ंक्शन चालू रहता है और इसके नीचे अन्य सभी कोड निष्पादित करता है।
जैसा कि आपको पता होना चाहिए कि HTTP अनुरोध में प्रतिक्रिया केवल एक बार भेजी जा सकती है और जब फ़ंक्शन फिर से त्रुटि के बाद प्रतिक्रिया भेजता है तो यह आपको दिखाता है कि क्लाइंट को भेजे जाने के बाद प्रतिक्रिया शीर्षलेख नहीं भेज सकते हैं।
उम्मीद है ये मदद करेगा। शुभकामनाएँ :)