Routing এবং middleware Node.js-এ দুটি গুরুত্বপূর্ণ ধারণা এবং Express ওয়েব অ্যাপ্লিকেশন তৈরির কাঠামো।
Routing:
- Routing ক্লায়েন্টের কাছ থেকে অনুরোধগুলি কীভাবে পরিচালনা করবেন এবং সার্ভারে সংশ্লিষ্ট সংস্থানগুলির সাথে প্রতিক্রিয়া জানাবেন তা নির্ধারণ করার প্রক্রিয়া।
- তে Express, আমরা HTTP পদ্ধতি(GET, POST, PUT, DELETE, ইত্যাদি) এবং সংশ্লিষ্ট URL পাথ উল্লেখ করে রুট নির্ধারণ করতে পারি।
- অনুরোধ প্রক্রিয়াকরণ, ডাটাবেস অ্যাক্সেস এবং ক্লায়েন্টকে প্রতিক্রিয়া পাঠানোর মতো কাজগুলি সম্পাদন করার জন্য প্রতিটি রুটে এক বা একাধিক হ্যান্ডলার ফাংশন থাকতে পারে।
Middleware:
- Middleware অনুরোধ চূড়ান্ত রুট হ্যান্ডলারে পৌঁছানোর আগে একটি ক্রমানুসারে কার্যকর করা হয় যে ফাংশন.
- এগুলি সাধারণ কার্যকারিতা সম্পাদন করতে এবং মধ্যবর্তী কাজগুলি যেমন প্রমাণীকরণ, লগিং, ত্রুটি পরিচালনা ইত্যাদি পরিচালনা করতে ব্যবহৃত হয়।
- Middleware সম্পূর্ণ অ্যাপ্লিকেশনে প্রয়োগ করা যেতে পারে বা নির্দিষ্ট রুটের জন্য নির্দিষ্ট করা যেতে পারে।
- প্রতিটি middleware অনুরোধ(অনুরোধ) এবং res(প্রতিক্রিয়া) পরামিতিগুলি গ্রহণ করে এবং প্রক্রিয়াকরণ করতে পারে, পরবর্তীতে অনুরোধটি পাস করতে পারে middleware বা ক্লায়েন্টকে একটি প্রতিক্রিয়া পাঠিয়ে প্রক্রিয়াকরণ শেষ করতে পারে।
সংমিশ্রণ Routing এবং Middleware এর উদাহরণ Express:
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...');
});
এই উদাহরণে, আমরা সার্ভারে আসা প্রতিটি নতুন অনুরোধ লগ করার জন্য একটি কাস্টম সংজ্ঞায়িত করেছি। এই পদ্ধতি ব্যবহার করে সমগ্র অ্যাপ্লিকেশন প্রয়োগ করা হয়. তারপর, আমরা দুটি রুট সংজ্ঞায়িত করেছি, একটি মূল পৃষ্ঠার জন্য( ) এবং অন্যটি সম্পর্কে পৃষ্ঠার জন্য( )। অবশেষে, আমরা সার্ভার শুরু করি এবং 3000 পোর্টে শুনি। middleware loggerMiddleware
middleware app.use()
'/'
'/about'
প্রতিটি অনুরোধের জন্য কার্যকর করা হবে, সংশ্লিষ্ট রুট হ্যান্ডলারের কাছে অনুরোধ পাঠানোর আগে বা ক্রমানুসারে কনসোলে একটি বার্তা লগিং করে । middleware loggerMiddleware
middleware
এই সংমিশ্রণ routing এবং middleware আমাদের বিভিন্ন অনুরোধ পরিচালনা করতে এবং একটি Express অ্যাপ্লিকেশনে সাধারণ কাজগুলি দক্ষতার সাথে সম্পাদন করতে দেয়।