Gids voor routering en middleware in Express

Routing en middleware zijn twee belangrijke concepten in Node.js en het Express-framework voor het bouwen van webapplicaties.

Routing:

  • Routing is het proces waarbij wordt bepaald hoe de vraag van de klant moet worden afgehandeld en hoe moet worden gereageerd met dezelfde bronnen op de server.
  • In Express kunnen we routes beëindigen door de HTTP-methode (GET, POST, PUT, DELETE, etc.) en de bijbehorende URL-pad op te geven.
  • Elke route kan een of meer handlerfuncties hebben om uit te voeren zoals het verwerken van aanvragen, toegang tot de database en het verzenden van antwoorden naar de klant.

Middleware:

  • Middleware zijn functies die in een bepaalde volgorde worden uitgevoerd voordat het verzoek om de route-handler is bereikt.
  • Ze worden gebruikt om algemene functionaliteiten uit te voeren en tussenliggende genomen uit te voeren, zoals authenticatie, registratieregistratie, foutafhandeling, enz.
  • Middleware kan worden toegepast op de gehele applicatie of defecten voor specifieke routes.
  • Elke middleware ontvangt de parameters req (request) en res (respons) en kan de verwerking uitvoeren, het verzoek doorgeven aan de volgende middleware of de verwerking voltooid door een antwoord naar de client te sturen.

Voorbeeld van een combinatie van routering en middleware in 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...');
});

In dit voorbeeld hebben we een aangepaste middleware bepaald loggerMiddlewareom elk nieuw verzoek dat naar de server komt te loggen. Deze middleware wordt toegepast op de gehele applicatie met behulp van de app.use()methode. Vervolgens hebben we twee routes veronderstellen, een voor de hoofdpagina ( '/') en een andere voor de over-pagina ( '/about'). Als laatste starten we de server en luisteren naar poort 3000.

De middleware loggerMiddlewarewordt voor elk verzoek uitgevoerd, waarbij een bericht naar de console wordt gelogd voordat het verzoek wordt ingediend bij de corresponderende routehandler van middleware in de reeks.

Deze combinatie van routing en middleware stelt ons in staat om verschillende taken uit te voeren en veelvoorkomende efficiënt uit te voeren in een Express-applicatie.