मैं Nodejs के साथ खेल रहा हूं और एक छोटा सा आराम एपीआई बनाकर व्यक्त करता हूं। मेरा प्रश्न यह है कि कोड स्थिति सेट करने के लिए अच्छा अभ्यास / सर्वोत्तम तरीका क्या है, साथ ही साथ प्रतिक्रिया डेटा भी?
मुझे थोड़े से कोड के साथ समझाता हूं (मैं सर्वर शुरू करने के लिए नोड और एक्सप्रेस कोड आवश्यक नहीं लगाऊंगा, बस राउटर के तरीके जो चिंतित हैं):
router.get('/users/:id', function(req, res, next) {
var user = users.getUserById(req.params.id);
res.json(user);
});
exports.getUserById = function(id) {
for (var i = 0; i < users.length; i++) {
if (users[i].id == id) return users[i];
}
};
नीचे दिया गया कोड पूरी तरह से काम करता है, और डाकिया के साथ अनुरोध भेजते समय, मुझे निम्नलिखित परिणाम मिलते हैं:
जैसा कि आप देख सकते हैं, स्थिति 200 दिखाती है, जो ठीक है। लेकिन क्या ऐसा करने का यह सबसे अच्छा तरीका है? क्या कोई ऐसा मामला है जहां मुझे स्वयं स्थिति निर्धारित करनी चाहिए, साथ ही साथ JSON भी लौटाया जाना चाहिए? या कि हमेशा एक्सप्रेस द्वारा नियंत्रित किया जाता है?
उदाहरण के लिए, मैंने अभी एक त्वरित परीक्षण किया और उपरोक्त विधि को थोड़ा संशोधित किया:
router.get('/users/:id', function(req, res, next) {
var user = users.getUserById(req.params.id);
if (user == null || user == 'undefined') {
res.status(404);
}
res.json(user);
});
जैसा कि आप देख सकते हैं, यदि उपयोगकर्ता को सरणी में नहीं मिला है, तो मैं सिर्फ 404 की स्थिति निर्धारित करूंगा।
इस विषय के बारे में अधिक जानने के लिए संसाधन / सलाह स्वागत से अधिक है।