CRUD de usuarios en NodeJS: Parte 2

Ahora toca ponerse con la base de datos, para ello vamos a usar MongoDB. En mi caso utilizo el servicio de cloud y creo que para este proyecto es lo más rápido. Si lo prefieres ejecutar de manera local, aquí tienes la documentación para instalar y usar según tu SO.

Una vez hayamos configurado todo y tengamos nuestro servicio de MongoDB operativo, vamos a la carpeta de nuestro proyecto, tal y como lo habíamos llamado es rest-server y ejecutamos el siguiente comando en nuestra terminal.

    $ npm install mongoose --save

Cuando se haya completado la instalación de mongoose vamos a editar el código de nuestro fichero server.js, que está dentro de la carpeta server, añadiendo lo siguiente:

    const mongoose = require('mongoose');
    const run = async () => {
        await mongoose.connect(SERVER_BBDD, {
            useNewUrlParser: true,
            useUnifiedTopology: true,
            useCreateIndex: true,
        });
    };

    run().catch(error => console.error(error));

Debes cambiar el SERVER_BBDD por tu servidor. Si es local, será algo así mongodb://localhost:27017/usuarios, usuarios es el nombre de la base de datos que vamos a usar. Si no está creada, se creará automáticamente. En caso de ser en cloud será algo así: mongodb+srv://FuenRob:@cluster0-nixve.mongodb.net/usuarios?retryWrites=true&w=majority

Una vez hayamos añadido este código a nuestro fichero server.js, quedará así:

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

    const run = async () => {
        await mongoose.connect(SERVER_BBDD, {
            useNewUrlParser: true,
            useUnifiedTopology: true,
            useCreateIndex: true,
        });
    };

    run().catch(error => console.error(error));

    app.listen(process.env.PORT, () => {
         console.log(`Escuchando en el puerto 3000`);
    });

Si vamos a nuestra terminal y lanzamos en la raíz de nuestro proyecto el comando para levantar el servidor:

    $ node server/server.js

Veremos en nuestro terminal que, en caso de que no haya sucedido ningún error y de que nos hayamos conectado correctamente a nuestro servidor de base de datos, volveremos a recibir el mensaje de Escuchando en el puerto 3000.

En caso de que tengamos algún problema para conectar con el servidor de base de datos, esta línea de código nos mostrará en nuestro terminal cuál es el error run().catch(error => console.error(error)).