एक्सप्रेस में रूटिंग और मिडलवेयर के लिए गाइड

वेब अनुप्रयोगों के निर्माण के लिए Node.js और एक्सप्रेस फ्रेमवर्क में रूटिंग और मिडलवेयर दो महत्वपूर्ण अवधारणाएँ हैं।

रूटिंग:

  • रूटिंग यह निर्धारित करने की प्रक्रिया है कि क्लाइंट से अनुरोधों को कैसे संभालना है और सर्वर पर संबंधित संसाधनों के साथ प्रतिक्रिया कैसे देनी है।
  • एक्सप्रेस में, हम HTTP विधि (GET, POST, PUT, DELETE, आदि) और संबंधित URL पथ निर्दिष्ट करके मार्गों को परिभाषित कर सकते हैं।
  • प्रत्येक रूट में अनुरोध प्रसंस्करण, डेटाबेस एक्सेस और क्लाइंट को प्रतिक्रिया भेजने जैसे कार्य करने के लिए एक या अधिक हैंडलर फ़ंक्शन हो सकते हैं।

मध्यस्थ:

  • मिडलवेयर ऐसे फ़ंक्शन हैं जो अनुरोध के अंतिम रूट हैंडलर तक पहुंचने से पहले एक क्रम में निष्पादित होते हैं।
  • इनका उपयोग सामान्य कार्यप्रणाली करने और प्रमाणीकरण, लॉगिंग, त्रुटि प्रबंधन आदि जैसे मध्यवर्ती कार्यों को संभालने के लिए किया जाता है।
  • मिडलवेयर को संपूर्ण एप्लिकेशन पर लागू किया जा सकता है या विशिष्ट मार्गों के लिए निर्दिष्ट किया जा सकता है।
  • प्रत्येक मिडलवेयर req (अनुरोध) और res (प्रतिक्रिया) पैरामीटर प्राप्त करता है और प्रसंस्करण कर सकता है, अगले मिडलवेयर को अनुरोध पास कर सकता है, या क्लाइंट को प्रतिक्रिया भेजकर प्रसंस्करण समाप्त कर सकता है।

एक्सप्रेस में रूटिंग और मिडलवेयर के संयोजन का उदाहरण:

const express = require('express');
const app = express();

// Middleware
const loggerMiddleware = (req, res, next) => {
  console.log('A new request has arrived!');
  next();
};

// Apply middleware to the entire application
app.use(loggerMiddleware);

// Main route
app.get('/', (req, res) => {
  res.send('Welcome to the homepage!');
});

// Another route
app.get('/about', (req, res) => {
  res.send('This is the about page!');
});

// Start the server
app.listen(3000, () => {
  console.log('Server is listening on port 3000...');
});

इस उदाहरण में, हमने loggerMiddlewareसर्वर पर आने वाले प्रत्येक नए अनुरोध को लॉग करने के लिए एक कस्टम मिडलवेयर परिभाषित किया है। app.use()यह मिडलवेयर विधि का उपयोग करके संपूर्ण एप्लिकेशन पर लागू किया जाता है । फिर, हमने दो मार्ग परिभाषित किए हैं, एक मुख्य पृष्ठ ( '/') के लिए और दूसरा अबाउट पेज ( '/about') के लिए। अंत में, हम सर्वर शुरू करते हैं और पोर्ट 3000 पर सुनते हैं।

प्रत्येक अनुरोध के लिए मिडलवेयर loggerMiddlewareनिष्पादित किया जाएगा, अनुक्रम में संबंधित रूट हैंडलर या मिडलवेयर को अनुरोध पास करने से पहले कंसोल पर एक संदेश लॉग किया जाएगा।

रूटिंग और मिडलवेयर का यह संयोजन हमें एक्सप्रेस एप्लिकेशन में विभिन्न अनुरोधों को संभालने और सामान्य कार्यों को कुशलतापूर्वक करने की अनुमति देता है।