¿Qué son las rutas en Express.js?

| Última modificación: 18 de marzo de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

En el amplio mundo del desarrollo web, donde cada paso cuenta para alcanzar el éxito, es vital entender el concepto de las rutas en Express.js. En este artículo, exploraremos cómo Express.js, un popular marco de aplicación web para Node.js, facilita el manejo de rutas y puntos finales, lo que le permite a los desarrolladores crear aplicaciones web dinámicas y eficientes.

Sigue leyendo y sumérgete en el emocionante universo del acceso de rutas en Express.js, expresiones regulares, métodos HTTP, devoluciones de llamada y el poder del Exprese Router.

las rutas en Express.js

¿Qué son las rutas en Express.js?

En términos sencillos, las rutas en Express.js son una forma de asociar solicitudes HTTP con funciones que manejan esas solicitudes. Cuando un cliente (navegador, aplicación móvil, etc.) realiza una petición a un servidor Express.js, el enrutador (router) del framework se encarga de identificar la URL solicitada y de dirigir dicha solicitud al controlador (handler) correspondiente. Es como si estuvieras siguiendo un mapa en el que cada ruta lleva a un lugar específico.

En Express.js, las rutas se definen utilizando métodos HTTP como GET, POST, PUT o DELETE, entre otros. Por ejemplo, para manejar una solicitud GET a la ruta ‘/contacto’, el código podría lucir así:

//Rutas en Express.js
app.get('/contacto', (req, res) => {
  res.send('¡Bienvenido a la página de contacto!');
});

En este ejemplo, app representa la instancia de Express. Cuando alguien acceda a la URL ‘/contacto’ en el navegador, el servidor responderá con el mensaje “¡Bienvenido a la página de contacto!”.

Express Router: una herramienta poderosa

A medida que las aplicaciones web se vuelven más grandes y complejas, el número de rutas en Express.js puede aumentar considerablemente. Aquí es donde entra en juego el Express Router, una herramienta poderosa que permite organizar y estructurar el manejo de rutas en Express.js de manera más eficiente. El router funciona como un miniaplicativo independiente dentro de la aplicación principal y puede manejar grupos de rutas de forma modular.

El código siguiente muestra cómo crear un enrutador para manejar rutas relacionadas con usuarios en una aplicación:

//Rutas en Express.js
const express = require('express');
const userRouter = express.Router();

userRouter.get('/', (req, res) => {
  res.send('¡Bienvenido a la página de usuarios!');
});

userRouter.get('/perfil', (req, res) => {
  res.send('Esta es tu página de perfil');
});

app.use('/usuarios', userRouter);

Con el uso del router, todas las rutas relacionadas con usuarios están agrupadas bajo el prefijo ‘/usuarios’, lo que facilita la organización y el mantenimiento del código.

Métodos HTTP y el manejo de errores

Los métodos HTTP desempeñan un papel crucial en la creación de aplicaciones web. Express.js permite definir diferentes métodos para manejar distintas operaciones. Algunos de los métodos más utilizados son GET, POST, PUT, y DELETE, entre otros. Cada uno de estos métodos se asocia con una operación específica: GET para obtener información, POST para enviar datos al servidor, PUT para actualizar recursos y DELETE para eliminarlos.

app.get('/productos', (req, res) => {
  // Obtener la lista de productos desde la base de datos
  res.send('Aquí está la lista de productos');
});

app.post('/productos', (req, res) => {
  // Agregar un nuevo producto a la base de datos
  res.send('Producto agregado exitosamente');
});

Expresiones regulares: un toque de magia

Al trabajar con rutas en Express.js, es posible que te encuentres con situaciones en las que desees que una ruta coincida con múltiples URL o patrones. Aquí es donde las expresiones regulares entran en juego, ya que te permiten definir patrones de texto más complejos para las rutas. Las expresiones regulares te brindan un mayor grado de flexibilidad en la definición de rutas y te permiten capturar parámetros específicos de las URL.

Por ejemplo, si deseas capturar el ID de un usuario en la ruta ‘/usuarios/:id’, donde ‘:id’ representa un valor variable en la URL, puedes usar una expresión regular para lograrlo:

app.get('/usuarios/:id(\\d+)', (req, res) => {
  const userId = req.params.id;
  res.send(`Estás viendo el perfil del usuario con ID ${userId}`);
});

En este ejemplo, (\\d+) es la expresión regular que asegura que solo se capturan ID numéricos. Esta funcionalidad puede resultar extremadamente útil al construir aplicaciones que manejan bases de datos y necesitan extraer información específica de las URL.

¿Qué sigue?

Si te apasiona el mundo del desarrollo web y deseas adentrarte en la creación de aplicaciones completas y atractivas, el Desarrollo Web Full Stack Bootcamp de KeepCoding es el camino perfecto para ti. A través de un enfoque práctico y basado en proyectos reales, aprenderás a trabajar con las últimas tecnologías y herramientas que dominan el sector IT.

Al finalizar el bootcamp, te convertirás en un desarrollador web altamente capacitado, preparado para enfrentar los desafíos del sector tecnológico, que ofrece altos salarios y una estabilidad laboral envidiable. No esperes más y únete a KeepCoding para transformar tu vida y abrir las puertas del mundo del desarrollo web.

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado