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
Enumera los datos que llegan por params, query, body y headers.
Coloca el parser antes de la ruta que necesita JSON.
Añade autenticación antes de autorización.
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.

Mapa de prácticaEl 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
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.