,

Creating a CRUD API using Node.js and Express

Posted by






API REST con Node.js y Express | CRUD

API REST con Node.js y Express | CRUD

En este artículo vamos a hablar sobre cómo crear una API RESTful con Node.js y Express, y cómo realizar las operaciones CRUD (Crear, Leer, Actualizar, Borrar) en una base de datos.

¿Qué es una API RESTful?

Una API RESTful es una arquitectura de software que utiliza un conjunto de restricciones para crear servicios web. Estas restricciones, como el uso de HTTP para la transferencia de datos y la separación entre el cliente y el servidor, permiten que las aplicaciones se comuniquen de manera eficiente y escalable.

Usando Node.js y Express para crear una API RESTful

Node.js es un entorno de ejecución de JavaScript del lado del servidor que utiliza un modelo de E/S sin bloqueo y dirigido por eventos, lo que lo hace ideal para la creación de APIs RESTful. Express, por otro lado, es un marco de aplicación web de Node.js que facilita la creación de rutas, manejo de solicitudes y respuesta, y gestión de middleware.

Operaciones CRUD con Node.js y Express

Para realizar operaciones CRUD en una base de datos utilizando Node.js y Express, necesitaremos utilizar un ODM (Object-Document Mapping) como Mongoose para conectarnos a la base de datos y realizar las operaciones de creación, lectura, actualización y eliminación de datos.

Ejemplo de código

    
      const express = require('express');
      const mongoose = require('mongoose');
      const app = express();

      // Conexión a la base de datos
      mongoose.connect('mongodb://localhost:27017/api_rest', { useNewUrlParser: true, useUnifiedTopology: true });

      // Definición del esquema
      const schema = new mongoose.Schema({
        nombre: String,
        edad: Number
      });

      const Modelo = mongoose.model('Modelo', schema);

      // Rutas para realizar operaciones CRUD
      app.get('/modelo', async (req, res) => {
        const modelos = await Modelo.find();
        res.json(modelos);
      });

      app.post('/modelo', async (req, res) => {
        const modelo = new Modelo(req.body);
        await modelo.save();
        res.json(modelo);
      });

      app.put('/modelo/:id', async (req, res) => {
        const modelo = await Modelo.findById(req.params.id);
        Object.assign(modelo, req.body);
        await modelo.save();
        res.json(modelo);
      });

      app.delete('/modelo/:id', async (req, res) => {
        await Modelo.findByIdAndDelete(req.params.id);
        res.send('Modelo eliminado');
      });

      app.listen(3000, () => {
        console.log('Servidor en ejecución en el puerto 3000');
      });
    
  

Conclusión

Crear una API RESTful con Node.js y Express es un proceso sencillo y poderoso que nos permite interactuar con una base de datos de manera eficiente. Con las operaciones CRUD, podemos realizar las acciones fundamentales para gestionar los datos de nuestra aplicación de manera simple y consistente.


0 0 votes
Article Rating
6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Cristian Zuleta
8 months ago

excelente muy claro los conceptos, q extensión usas para auto complementar la documentación ya trabajada.

T D R
8 months ago

Sos un crack y por ti estaré dentro en el aprendizaje de Node porque te entiendo todo pero, hay algo que me tiene muy alarmado, es la decima quizá intentona de instalar Nodemon u otro plug que reinicialice el servidor y refleje en navegador los cambios pero no tengo suerte, lo hice siguiendo hasta tus comas en un proyecto nuevo y de nuevo no funciona, dice que nodemon o mejor mira el output, es una pesadilla de meses y quizá años que esas herramientas de auto actualizado no me funcionen, es mi pc?

“`
upper@DESKTOP-6JTLCIP:/mnt/c/Users/Usuario/Codes/beta/node/simple-api$ npm run dev

> simple-api@1.0.0 dev

> nodemon index.js

[nodemon] 3.0.1

[nodemon] to restart at any time, enter `rs`

[nodemon] watching path(s): .

[nodemon] watching extensions: js,mjs,cjs,json

[nodemon] starting `node index.js`

Servidor escuchando en .4321

rs
“`

Al hacer un cambio en index.js otra vez no pasó para mí la promesa de Node…

Dorian Gonzalez
8 months ago

EXCELENTE amigo!!.. gracias.

Deus lo Vult
8 months ago

Gracias compa , jsto vengo del video del despliegue , a ver cuando hacemos una api con ts y tests , uun saludo maestro 👑👑

Danilo Robert
8 months ago

Muy buen video hermano, muchas gracias!

Ayer me vi el video de "API con Node.js, Express y MongoDB Atlas", y hoy este. Estoy aprendiendo muchísimo 😀

Tengo una pregunta:
Si quisiera enviar http requests desde una computadora que no esté en mi red local, cómo puedo hacer? Hay algún video en el que hayas explicado algo parecido?

Muchas gracias hermano!

DguruZ
8 months ago

Exelente bro!