Průvodce do Routing a Middleware dovnitř Express

Routing a middleware jsou dva důležité koncepty v Node.js a Express frameworku pro vytváření webových aplikací.

Routing:

  • Routing je proces určování, jak zpracovat požadavky od klienta a odpovědět odpovídajícími prostředky na serveru.
  • V Express, můžeme definovat cesty zadáním HTTP metody(GET, POST, PUT, DELETE atd.) a odpovídající URL cesty.
  • Každá trasa může mít jednu nebo více funkcí obsluhy pro provádění úloh, jako je zpracování požadavků, přístup k databázi a odesílání odpovědí klientovi.

Middleware:

  • Middleware jsou funkce, které se provádějí v sekvenci předtím, než požadavek dosáhne konečné obslužné rutiny trasy.
  • Používají se k provádění běžných funkcí a zpracování přechodných úkolů, jako je ověřování, protokolování, zpracování chyb atd.
  • Middleware lze aplikovat na celou aplikaci nebo specifikovat pro konkrétní trasy.
  • Každý middleware obdrží parametry req(request) a res(response) a může provést zpracování, předat požadavek dalšímu middleware nebo ukončit zpracování odesláním odpovědi klientovi.

Příklad kombinace Routing a Middleware v 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...');  
});  

V tomto příkladu jsme definovali zvyk protokolovat každý nový požadavek přicházející na server. To se pomocí metody aplikuje na celou aplikaci. Poté jsme definovali dvě cesty, jednu pro hlavní stránku( ) a druhou pro stránku o aplikaci( ). Nakonec spustíme server a posloucháme na portu 3000. middleware loggerMiddleware middleware app.use() '/' '/about'

Provede se pro každý požadavek, zaznamená se zpráva do konzoly před předáním požadavku příslušnému ovladači trasy nebo v pořadí. middleware loggerMiddleware middleware

Tato kombinace routing a middleware umožňuje nám zpracovávat různé požadavky a efektivně provádět běžné úkoly v Express aplikaci.