Volver a la lista

Express.js — Enrutamiento y CRUD

Aprenda a crear un servidor web con Express.js y a configurar las rutas GET, POST, PUT y DELETE.

Intermedio
|
10min
|
Verificado (2026-07)
Express.jsrutaCRUDRESTservidor web
Progreso0/55 (0%)

Express.js: enrutamiento y CRUD

Al finalizar este tema

Podrás crear un servidor web con Express.js y configurar el enrutamiento para enviar diferentes respuestas según la ruta de la URL. También podrás implementar las cuatro operaciones básicas (CRUD) de una API REST.


¿Por qué es necesario Express.js?

Es posible crear un servidor utilizando el módulo integrado http de Node.js. Sin embargo, tendrías que implementar manualmente la bifurcación de URLs, el análisis de parámetros y el manejo de errores. Express.js es un framework web que se encarga de estas tareas repetitivas.

bash
# Instalación
npm init -y
npm install express
javascript
// app.js — Servidor Express más pequeño
const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('¡Hola!');
});

app.listen(3000, () => {
  console.log('Servidor en ejecución: http://localhost:3000');
});

Al ejecutar node app.js, se puede acceder a localhost:3000 en el navegador. Estas 6 líneas son todo lo que Express ofrece; el resto es la repetición y extensión de este patrón.


Enrutamiento: conectar URLs con funciones

El enrutamiento es la regla que establece: "Si llega una solicitud a esta URL, ejecuta esta función".

javascript
// GET — Consulta de datos
app.get('/users', (req, res) => {
  res.json([{ id: 1, name: 'Kim Hun' }, { id: 2, name: 'Lee Su' }]);
});

// GET — Consultar un elemento específico por parámetro de URL
app.get('/users/:id', (req, res) => {
  const userId = req.params.id;
  res.json({ id: userId, name: 'Kim Hun' });
});

// POST — Creación de datos
app.use(express.json()); // Análisis del cuerpo de la solicitud JSON es obligatorio
app.post('/users', (req, res) => {
  const newUser = req.body;
  res.status(201).json({ message: 'Creación completada', user: newUser });
});

:id es un parámetro dinámico. Tanto /users/1 como /users/42 coinciden con esta ruta, y se puede extraer el valor mediante req.params.id.


CRUD — Las 4 operaciones básicas

El procesamiento de datos en las aplicaciones web casi siempre se reduce a estas cuatro operaciones.

OperaciónMétodo HTTPEjemplo de URLDescripción
CreatePOST/usersCrear un nuevo usuario
ReadGET/users o /users/:idConsultar la lista o un elemento individual
UpdatePUT/users/:idModificar la información de un usuario específico
DeleteDELETE/users/:idEliminar un usuario específico
javascript
// Actualizar — Modificación de datos
app.put('/users/:id', (req, res) => {
  const { id } = req.params;
  const updatedData = req.body;
  res.json({ message: `Usuario ${id} actualizado correctamente`, data: updatedData });
});

// Eliminar — Eliminación de datos
app.delete('/users/:id', (req, res) => {
  const { id } = req.params;
  res.json({ message: `Usuario ${id} eliminado correctamente` });
});

Este patrón se denomina API REST. La URL representa el "qué (sustantivo)" y el método HTTP representa el "cómo (verbo)". Es una estructura en la que cuatro acciones (GET, POST, PUT y DELETE) se mapean a una única URL, /users.


Separación de rutas — cuando los archivos crecen

Cuando hay muchas rutas, no es posible incluirlas todas en un solo app.js. Utilice los Router de Express para separarlas por archivos.

javascript
// routes/users.js
const router = require('express').Router();

router.get('/', (req, res) => { res.json([]); });
router.post('/', (req, res) => { res.status(201).json({}); });
router.put('/:id', (req, res) => { res.json({}); });
router.delete('/:id', (req, res) => { res.json({}); });

module.exports = router;
javascript
// app.js — Montar los enrutadores
const usersRouter = require('./routes/users');
app.use('/users', usersRouter);
// /users + '/' interno del enrutador = GET /users
// /users + '/:id' interno del enrutador = PUT /users/42

app.use('/users', usersRouter) es la clave. routes/users.js procesa todas las solicitudes que comienzan con /users. Es la aplicación práctica del tema anterior (modularización de código).


Resumen clave

Express consiste simplemente en conectar "URL → función". Sobre esta estructura básica se integran middleware, autenticación y bases de datos, pero su esencia no cambia. Si dominas los cuatro patrones CRUD, podrás desarrollar la mayoría de las API de backend.


→ Aplicado a Bio: DevBench — Fundamentos de Express

💬 Preguntas y comentarios

0 comentarios

Puedes publicar sin iniciar sesión. Los comentarios de invitados no pueden editarse ni eliminarse después.

0/2000

Cargando...