Chuck's Academy

Express JS

Fundamentos de Express

En este capítulo, exploraremos los conceptos fundamentales de Express. Veremos cómo manejar rutas, utilizar middlewares y cómo trabajar con las solicitudes y respuestas HTTP. Entender estos fundamentos es esencial para construir aplicaciones sólidas y escalables con Express.

Rutas en Express

Una de las tareas más importantes en cualquier aplicación web es manejar rutas. Las rutas en Express se utilizan para definir cómo debe responder la aplicación cuando recibe una solicitud en una URL específica. Cada ruta puede manejar diferentes tipos de solicitudes HTTP como GET, POST, PUT o DELETE.

Definiendo Rutas Básicas

Veamos cómo se definen algunas rutas básicas en Express:

javascript
"En este código, definimos dos rutas básicas. La primera ruta responde a solicitudes GET en la raíz del sitio web, slash, devolviendo el texto Home Page. La segunda ruta responde a solicitudes GET en slash about y devuelve el texto About Page. Finalmente, el servidor escucha en el puerto tres mil."

Rutas con Parámetros

Express permite definir rutas dinámicas que pueden recibir parámetros en la URL. Estos parámetros son útiles cuando necesitamos responder a solicitudes específicas basadas en algún valor que se pase en la URL.

javascript
"Aquí estamos definiendo una ruta dinámica. La ruta slash users slash dos puntos id recibe un parámetro id en la URL. Este valor se puede obtener a través de req punto params punto id, y se usa para generar la respuesta con el texto User ID más el valor del parámetro."

Middleware en Express

En el capítulo anterior, mencionamos brevemente el concepto de middleware en Express. Ahora profundizaremos en su uso.

¿Qué es un Middleware?

Un middleware es esencialmente una función que se ejecuta durante el ciclo de vida de una solicitud en una aplicación Express. Tiene acceso al objeto de solicitud (req), al objeto de respuesta (res) y a la función next, que indica cuándo debe pasar el control al siguiente middleware.

Los middlewares se pueden utilizar para realizar diversas tareas, como la autenticación, validación de datos, registro de actividades o manejo de errores.

Uso de Middlewares

Para usar middleware en Express, podemos usar la función app.use(). Aquí hay un ejemplo de un middleware simple que registra la URL de cada solicitud:

javascript
"En este middleware, cada vez que una solicitud llega al servidor, registramos la URL de la solicitud con console punto log, usando req punto url. Luego llamamos a next, para que el flujo continúe al siguiente middleware o ruta."

Los middlewares son poderosos porque permiten agregar funcionalidades a las solicitudes sin modificar directamente las rutas.

Middlewares de Terceros

Express también soporta middlewares de terceros, que son paquetes externos que se pueden instalar y utilizar en la aplicación. Algunos ejemplos incluyen body-parser para analizar cuerpos de solicitudes JSON o cookie-parser para manejar cookies.

Podemos instalar un middleware como body-parser y usarlo para analizar datos JSON en una solicitud POST.

bash
"Instalamos body-parser usando npm install body-parser."

Luego, podemos usar este middleware en nuestra aplicación:

javascript
"Primero requerimos body-parser y lo configuramos con app punto use body-parser punto json, para que pueda procesar datos JSON. Luego, en la ruta slash data con el método POST, accedemos a los datos enviados en la solicitud a través de req punto body, y los devolvemos como respuesta."

Solicitudes y Respuestas en Express

En Express, manejar solicitudes y respuestas es parte central de cualquier aplicación web. Una solicitud HTTP tiene varios componentes, y Express nos permite trabajar con estos datos fácilmente.

Accediendo a los Datos de una Solicitud

Las solicitudes HTTP contienen varios datos importantes que podemos utilizar en nuestra aplicación, como parámetros, encabezados y el cuerpo de la solicitud. Aquí mostramos cómo acceder a algunos de estos datos.

javascript
"En este ejemplo, definimos una ruta que accede al encabezado de la solicitud, específicamente el User-Agent. Lo obtenemos usando req punto headers y accedemos al encabezado User-Agent."

Enviando Respuestas

Express proporciona varios métodos para enviar respuestas. El más común es res.send(), pero también podemos usar res.json() para enviar respuestas en formato JSON, o res.status() para enviar códigos de estado HTTP junto con una respuesta.

javascript
"En esta ruta, estamos enviando una respuesta en formato JSON usando res punto json, pasando un objeto JavaScript con un mensaje."
javascript
"Aquí estamos enviando una respuesta con un código de estado cuatro cero cuatro, que significa que la página no fue encontrada, usando res punto status seguido de send para enviar el mensaje Page Not Found."

Conclusión

En este capítulo, hemos explorado algunos de los fundamentos más importantes de Express, como el manejo de rutas, el uso de middlewares y la gestión de solicitudes y respuestas. Estos conceptos son esenciales para cualquier desarrollador que quiera construir aplicaciones sólidas y eficientes con Express.


Pregúntame lo que sea