Middleware ing Express.js: Nangani Reque penengah

Pambuka Middleware ing Express.js

Middleware ing Express.js punika konsep kuat sing ngijini sampeyan kanggo nglakokaké fungsi ing urutan tartamtu sak siklus urip request-respon. Fungsi kasebut bisa nindakake macem-macem tugas kayata otentikasi, logging, validasi data, lan liya-liyane. Middleware fungsi sing kaleksanan sequentially, lan saben middleware duwe akses kanggo request lan response obyek, uga next fungsi, kang liwat kontrol kanggo sabanjuré middleware ing tumpukan.

Kenapa Gunakake Middleware ?

Middleware iku penting kanggo modularizing fungsi aplikasi lan nambah sawijining maintainability. Iki ngidini sampeyan njaga panangan rute sampeyan tetep resik lan fokus ing tugas tartamtu nalika ngunggahake masalah sing umum utawa salib menyang middleware fungsi. Pemisahan keprihatinan iki ningkatake panggunaan maneh kode lan nggawe basis kode sampeyan luwih teratur.

Nggawe lan Nggunakake Middleware

Kanggo nggawe middleware ing Express.js, sampeyan nemtokake fungsi sing njupuk telung paramèter: request, response, lan next.

Iki minangka conto dhasar middleware sing nyathet saben panjaluk sing mlebu:

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);  

Sampeyan bisa nggunakake app.use() cara kanggo aplikasi middleware global kanggo kabeh rute, utawa sampeyan bisa nggunakake selektif kanggo rute tartamtu.

Urutan Middleware Eksekusi

Middleware fungsi sing kaleksanan ing urutan padha ditetepake nggunakake app.use().

Tuladhane:

app.use(middleware1);  
app.use(middleware2);  

Ing kasus iki, middleware1 bakal kaleksanan sadurunge middleware2 kanggo kabeh panjalukan mlebu.

Nangani Kasalahan ing Middleware

Yen ana kesalahan ing sawijining middleware fungsi, sampeyan bisa ngirim kesalahan kasebut menyang next fungsi kasebut, lan Express.js kanthi otomatis pindhah menyang penanganan kesalahan middleware.

Iki contone:

const errorMiddleware =(err, req, res, next) => {  
  console.error(err);  
  res.status(500).send('Something went wrong!');  
};  
  
app.use(errorMiddleware);  

Nggunakake Middleware kanggo Authentication

Middleware umume digunakake kanggo ngleksanakake otentikasi lan wewenang ing aplikasi web. Umpamane, sampeyan bisa nggawe middleware fungsi sing mriksa manawa pangguna wis diotentikasi sadurunge ngidini akses menyang rute tartamtu:

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!');  
});  

 

Kesimpulan

Middleware ing Express.js minangka alat penting kanggo ngatur lan ningkatake fungsi aplikasi web sampeyan. Kanthi nggawe middleware fungsi sing bisa digunakake maneh, sampeyan bisa nyepetake kode sampeyan, ngowahi keprihatinan, lan nambah pangopènan sakabèhé proyek sampeyan. Saka nangani otentikasi nganti logging lan manajemen kesalahan, middleware sampeyan bisa nggawe aplikasi web sing kuat lan aman kanthi efisien.