Saltar al contenido

Lección 3 de 12 · Lectura y práctica

Middleware, request y response

Respuesta rapida: Un middleware en Express es una funcion que corre durante el ciclo del request. Puede autenticar, loguear, parsear JSON, validar headers, aplicar rate limit o manejar errores. Que vas a construir Un middleware.

Del concepto a la práctica

Taller de esta lección

El middleware modifica o inspecciona el ciclo de una petición y su orden determina qué información está disponible. Un parser puede llenar request.body, un middleware de autenticación puede añadir request.user y uno de errores debe ejecutarse después de las rutas.

Ejemplo resuelto

Para POST /courses, el orden es: parsear JSON, autenticar, validar permisos y ejecutar el controlador. Si autenticas antes de leer el cuerpo no hay problema, pero si el controlador corre antes de la autorización, un usuario sin permisos puede intentar publicar. La respuesta debe fijar status y cuerpo una sola vez.

Después de enviar una respuesta, termina con return; no llames después a next() para que otro controlador intente responder. El parser puede rechazar un JSON mal formado antes de llegar a autenticación: documenta esta precedencia y limita el tamaño. req.user no viene de Express: lo establece un middleware que valida la sesión o credencial.

Pruébalo

  1. Enumera los datos que llegan por params, query, body y headers.

  2. Coloca el parser antes de la ruta que necesita JSON.

  3. Añade autenticación antes de autorización.

  4. Termina en el controlador y reserva el error handler para fallos.

Error frecuente: olvidar next() en un middleware que no responde. Corrígelo haciendo que continúe o devuelva una respuesta, pero nunca ambas.

Comprueba tu resultado

Simula una petición sin credencial a POST /courses: debe detenerse antes del controlador y producir 401. Una petición autenticada sin rol de publicación debe producir 403; ninguna debe crear el curso.

Navegador, API y base de datos conectados por solicitudes, consultas y respuestas en sentidos opuestos.
CursaloMapa de práctica
Del navegador a los datos

El navegador envía una solicitud a la API. El servidor valida la operación y consulta los datos; después devuelve una respuesta que el navegador puede mostrar. La base de datos se comunica con el servidor y no directamente con el navegador.

Ver la infografía en tamaño completo ↗
Fuentes para profundizar
Respuesta rapida: Un middleware en Express es una funcion que corre durante el ciclo del request. Puede autenticar, loguear, parsear JSON, validar headers, aplicar rate limit o manejar errores.

Que vas a construir

Un middleware en Express es una funcion que corre durante el ciclo del request. Puede autenticar, loguear, parsear JSON, validar headers, aplicar rate limit o manejar errores.

Paso 1: criterio de backend

El orden importa: primero parseas datos, luego autenticas, despues validas permisos y finalmente llegas al controlador. Un middleware mal ubicado puede abrir bugs de seguridad.

Paso 2: criterio de backend

Request contiene parametros, query, body, headers y usuario si lo agregaste. Response define status, headers y payload. Aprender a usarlos con precision evita APIs ambiguas.

Paso 3: criterio de backend

En produccion conviene tener middlewares pequenos y nombrados. Si un middleware hace cinco cosas distintas, va a ser dificil de depurar cuando falle un endpoint.

Ejercicio practico para portfolio

Construye una mini API de cursos, usuarios o empleos con Express.js. Inclui rutas claras, validacion, errores consistentes y un README que explique como correr el proyecto. La meta es que un reclutador o cliente vea que podes pasar de tutorial a backend mantenible.

  • Entregable: repositorio con endpoint, ejemplo de request y respuesta esperada.
  • Checklist: status codes correctos, validacion, logs, seguridad basica y pruebas manuales reproducibles.
  • Salida laboral: conecta el proyecto con rutas de carreras, empleos y servicios backend del marketplace.

Sigue con Express.js y Node.js para APIs profesionales

Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.

Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.

01 / ELEGIR UNA RUTA

El próximo paso

Aprende IA mientras construyes algo que sí necesitas.

Empieza por el curso inicial o explora el catálogo para encontrar una práctica alineada con tu trabajo.