यदि आप एक्सप्रेस का उपयोग कर रहे हैं, तो नियंत्रक . से संदेश न भेजें . एक मिडलवेयर बनाएं जिसका मुख्य उद्देश्य क्लाइंट को प्रतिक्रिया भेजना है। यह आपको consist . का प्रारूप सेट करने की शक्ति देगा ग्राहक को प्रतिक्रिया।
उदाहरण के लिए मैंने प्रतिक्रिया मिडलवेयर इस तरह बनाया है :-
module.exports = function(req, res, next) {
const message = {};
message.body = req.responseObject;
message.success = true;
message.status = req.responseStatus || 200;
res.status(message.status).send(message);
return next();
};
उपरोक्त कोड इस तरह का प्रारूप उत्पन्न करेगा।
{
"success": true,
"status": 200,
"body": {
"name": "rahul"
}
}
आप अनुरोध उत्थानकर्ता का उपयोग कर सकते हैं एक्सप्रेस की संपत्ति। आप पिछले मिडलवेयर से प्रतिक्रिया ऑब्जेक्ट और प्रतिक्रिया स्थिति जोड़ सकते हैं।
इसी तरह अलग मिडलवेयर में भी गलतियां की जा सकती हैं।
आप इसके द्वारा अपने मार्गों में कॉल कर सकते हैं:-
const responseSender = require('./../middleware/responseSender');
/* your rest middleware. and put responseSender middleware to the last.*/
router.get('/',/* Your middlewares */, responseSender);
आप इसे निम्न द्वारा कॉल कर सकते हैं:-
exports.groups_Get_All = (req, res, next) => {
Group.find()
.exec()
.then(docs => {
const response =
docs.map(doc => {
return {
gname: doc.gname,
employee: doc.employeeId,
_id: doc._id,
createdAt: doc.createdAt
};
})
req.responseObject = response; // This will suffice
return next()
})
.catch(next);
}