TechLead

Middleware en Express.js

Aprende a usar middleware para autenticación, logging, validación y más

¿Qué es middleware?

Middleware es una función que recibe req, res y next. Puede modificar la petición, la respuesta o delegar al siguiente middleware.

function logger(req, res, next) {
  console.log(req.method, req.url);
  next();
}

app.use(logger);

Tipos de middleware

  • • Aplicación: app.use()
  • • Router: router.use()
  • • Error: (err, req, res, next)
  • • Built-in: express.json()
  • • Terceros: cors, morgan, helmet

Middleware con condiciones

function requireAuth(req, res, next) {
  if (!req.user) return res.status(401).json({ error: 'No autorizado' });
  next();
}

app.get('/admin', requireAuth, (req, res) => {
  res.json({ ok: true });
});

Orden importa

El orden de app.use define el flujo. Middleware de parsing o auth debe ir antes de las rutas que lo necesitan.