Middleware માં પરિચય Express.js
Middleware in એ Express.js એક શક્તિશાળી ખ્યાલ છે જે તમને વિનંતી-પ્રતિસાદ જીવનચક્ર દરમિયાન ચોક્કસ ક્રમમાં કાર્યોને ચલાવવા માટે પરવાનગી આપે છે. આ કાર્યો વિવિધ કાર્યો જેમ કે પ્રમાણીકરણ, લોગીંગ, ડેટા માન્યતા અને વધુ કરી શકે છે. Middleware ફંક્શન્સ ક્રમિક રીતે ચલાવવામાં આવે છે, અને દરેક પાસે અને ઑબ્જેક્ટ્સ તેમજ ફંક્શનની middleware ઍક્સેસ હોય છે, જે સ્ટેકમાં બીજાને નિયંત્રણ પસાર કરે છે. request
response
next
middleware
શા માટે ઉપયોગ Middleware ?
Middleware તમારી એપ્લિકેશનની કાર્યક્ષમતાને મોડ્યુલરાઇઝ કરવા અને તેની જાળવણીક્ષમતા વધારવા માટે જરૂરી છે. તે તમને તમારા રૂટ હેન્ડલર્સને સ્વચ્છ રાખવા અને કાર્યોમાં સામાન્ય અથવા ક્રોસ-કટીંગ ચિંતાઓને ઑફલોડ કરતી વખતે ચોક્કસ કાર્યો પર ધ્યાન કેન્દ્રિત કરવા સક્ષમ બનાવે છે middleware. ચિંતાઓનું આ વિભાજન કોડ પુનઃઉપયોગીતાને પ્રોત્સાહન આપે છે અને તમારા કોડબેઝને વધુ વ્યવસ્થિત બનાવે છે.
બનાવવું અને વાપરવું Middleware
middleware માં બનાવવા માટે Express.js, તમે એક કાર્ય વ્યાખ્યાયિત કરો છો જે ત્રણ પરિમાણો લે છે: request
, response
, અને next
.
middleware દરેક ઇનકમિંગ વિનંતીને લોગ કરે છે તેનું મૂળભૂત ઉદાહરણ અહીં છે:
const logMiddleware =(req, res, next) => {
console.log(`Received a ${req.method} request at ${req.url}`);
next(); // Pass control to the next middleware
};
app.use(logMiddleware);
તમે તમામ રૂટ પર વૈશ્વિક સ્તરે app.use()
લાગુ કરવા માટે પદ્ધતિનો ઉપયોગ કરી શકો છો, અથવા તમે ચોક્કસ રૂટ્સ માટે પસંદગીપૂર્વક તેનો ઉપયોગ કરી શકો છો. middleware
Middleware એક્ઝેક્યુશનનો ઓર્ડર
Middleware વિધેયો તે ક્રમમાં ચલાવવામાં આવે છે જે તેઓનો ઉપયોગ કરીને વ્યાખ્યાયિત કરવામાં આવે છે app.use()
.
દાખ્લા તરીકે:
app.use(middleware1);
app.use(middleware2);
આ કિસ્સામાં, બધી ઇનકમિંગ વિનંતીઓ માટે middleware1
પહેલાં ચલાવવામાં આવશે. middleware2
માં ભૂલો સંભાળવી Middleware
જો ફંક્શનમાં ભૂલ થાય છે middleware, તો તમે ભૂલને ફંક્શનમાં પસાર કરી શકો છો next
, અને Express.js આપમેળે ભૂલ-હેન્ડલિંગ પર જશો middleware.
અહીં એક ઉદાહરણ છે:
const errorMiddleware =(err, req, res, next) => {
console.error(err);
res.status(500).send('Something went wrong!');
};
app.use(errorMiddleware);
Middleware પ્રમાણીકરણ માટે ઉપયોગ
Middleware સામાન્ય રીતે વેબ એપ્લિકેશન્સમાં પ્રમાણીકરણ અને અધિકૃતતાના અમલીકરણ માટે વપરાય છે. દાખલા તરીકે, તમે એક middleware ફંક્શન બનાવી શકો છો જે ચોક્કસ રૂટની ઍક્સેસની મંજૂરી આપતા પહેલા વપરાશકર્તા પ્રમાણિત છે કે કેમ તે તપાસે છે:
const authenticateMiddleware =(req, res, next) => {
if(req.isAuthenticated()) {
return next(); // User is authenticated, proceed to the next middleware
}
res.redirect('/login'); // User is not authenticated, redirect to login page
};
app.get('/profile', authenticateMiddleware,(req, res) => {
res.send('Welcome to your profile!');
});
નિષ્કર્ષ
Middleware in એ Express.js તમારી વેબ એપ્લિકેશન્સની કાર્યક્ષમતાને મેનેજ કરવા અને વધારવા માટે એક મહત્વપૂર્ણ સાધન છે. ફરીથી વાપરી શકાય તેવા કાર્યો બનાવીને middleware, તમે તમારા કોડને સુવ્યવસ્થિત કરી શકો છો, ચિંતાઓને મોડ્યુલરાઈઝ કરી શકો છો અને તમારા પ્રોજેક્ટ્સની એકંદર જાળવણીક્ષમતા સુધારી શકો છો. પ્રમાણીકરણને હેન્ડલ કરવાથી લઈને લોગિંગ અને ભૂલ વ્યવસ્થાપન સુધી, middleware તમને મજબૂત અને સુરક્ષિત વેબ એપ્લિકેશન્સ કાર્યક્ષમ રીતે બનાવવાની શક્તિ આપે છે.