En este tutorial, aprenderás a crear un pequeño CRUD utilizando Node.js y Express, para manejar datos en un archivo JSON.
npm init -y
npm install express
<h1>Paso 2: Crear el Servidor con Express</h1>
index.js
en la raíz del proyecto.const express = require('express');
const app = express();
const PORT = 3000;
app.use(express.json());
app.listen(PORT, () => {
console.log(`Servidor corriendo en http://localhost:${PORT}`);
});
<h1>Paso 3: Crear Operaciones CRUD</h1>
Vamos a gestionar los datos usando un archivo data.json
. Añade las siguientes rutas en index.js
:
const fs = require('fs');
// Cargar datoslet tasks = JSON.parse(fs.readFileSync('data.json', 'utf-8'));
// Crear una nueva tarea
app.post('/tasks', (req, res) => {
const newTask = req.body;
tasks.push(newTask);
fs.writeFileSync('data.json', JSON.stringify(tasks, null, 2));
res.status(201).send(newTask);
});
// Obtener todas las tareas
app.get('/tasks', (req, res) => {
res.send(tasks);
});
// Actualizar una tarea
app.put('/tasks/:id', (req, res) => {
const id = req.params.id;
tasks[id] = req.body;
fs.writeFileSync('data.json', JSON.stringify(tasks, null, 2));
res.send(tasks[id]);
});
// Eliminar una tarea
app.delete('/tasks/:id', (req, res) => {
tasks.splice(req.params.id, 1);
fs.writeFileSync('data.json', JSON.stringify(tasks, null, 2));
res.status(204).send();
});
<h1>Paso 4: Crear el Archivo data.json
</h1>
data.json
en la raíz del proyecto con el siguiente contenido: []
Este archivo almacenará nuestras tareas en formato JSON.
<h1>Paso 5: Probar el CRUD</h1>Usa Postman o una herramienta similar para probar las rutas:
- Crear una tarea (POST):
URL: http://localhost:3000/tasks
Body:
{"title": "Aprender Node.js"}
- Obtener todas las tareas (GET):
URL: http://localhost:3000/tasks
- Actualizar una tarea (PUT):
URL: http://localhost:3000/tasks/0
Body:
{"title": "Aprender Express"}
- Eliminar una tarea (DELETE):
URL: http://localhost:3000/tasks/0
¡Listo! Has creado un CRUD básico usando Node.js, Express y un archivo JSON para almacenar datos.