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.