Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Integrando MongoDB con Node.js

Una aplicación robotizada moderna tiene un medio para almacenar datos en su backend, como la aplicación Node, que puede funcionar tanto con aplicaciones no relacionales (como PostgresQL, MongoDB) como relacionales (como MySQL, Oracle).

MongoDB es una base de datos no relacional que es relativamente fácil de usar y potente, y si eres un desarrollador de Node.js y quieres aprender los beneficios que aporta y cómo empezar a crear una integración segura con tu aplicación Node, esto es la guía para ti!

En este artículo, aprenderemos cómo integrar/conectarnos a MongoDB; una base de datos no relacional muy popular con Node.js y veamos cómo podemos usarla dentro de las aplicaciones de Node.

Nota: Para seguir adelante, necesitarás instalar Node.js. Puede descargar la versión estable más larga (LTS) e instalarla en su máquina local desde su Página de descarga oficial.

Breve información sobre MongoDB

MongoDB es la base de datos basada en documentos más popular y avanzada, donde todos los datos se almacenan en Binary JSON (JavaScript Object Notation) conocido como BSON. Un BSON es un documento, sin necesidad de un esquema de datos predefinido. Permite que los datos a los que una aplicación accede con frecuencia se almacenen en el mismo lugar y hace que la lectura de la base de datos sea fácil y rápida.

A diferencia de las tablas relacionales, las colecciones son independientes, lo que hace que sea mucho más fácil trabajar con ellas. Cuando se crea un nuevo documento en una colección de MongoDB, se le asigna una ID para que sea único para esa colección y, dentro del documento, se pueden definir múltiples campos; donde el valor podría ser una variante de tipos de datos que van desde matrices, cadenas, números enteros, objetos, etc.

Para manipular datos, la API de consulta es útil para realizar las operaciones básicas de creación, lectura, actualización y eliminación (CRUD) en toda la base de datos. También se pueden crear índices secundarios para garantizar la optimización y hacer que las consultas comunes sean extremadamente rápidas. También se admiten consultas geoespaciales, que permiten encontrar documentos en una ubicación geográfica específica.

Comenzando con MongoDB

Antes de comenzar a conectarnos a MongoDB desde una aplicación Node, diríjase al sitio web oficial de MongoDB para registrarse en Try Free Botón (si aún no tienes una cuenta):

Después de crear su cuenta, diríjase a hacer clic en Build a Database y haga clic para crear una base de datos:

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

A continuación, cree un clúster compartido (¡es gratis para siempre!) y asígnele el nombre que desee.

El clúster compartido es ideal para experimentar en un entorno limitado. Puede actualizar a un clúster de producción en cualquier momento.

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Cuando haya creado correctamente un clúster, haga clic en el Connect Botón para conectarse al cluster:

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Ahora se le muestran cuatro formas diferentes de cómo conectarse con MongoDB, pero como deseamos conectarnos a una aplicación Node, elijamos la Connect your application opción:

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Luego se le pedirá que elija un método de conexión. Aquí, asegúrese de seleccionar Node.js como su controlador y elija una versión adecuada (estoy usando 4.1 o posterior mientras escribo este artículo).

También se nos muestra una cadena de conexión que es útil para conectar nuestro clúster MongoDB a una aplicación Node:

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Ahora, necesitamos crear una aplicación Node.js para conectarnos a la base de datos MongoDB.

Construyendo la aplicación de nodo

En su directorio preferido para este proyecto, cree una nueva carpeta:

$ mkdir integrating-mongodb-node

Entonces corre npm init en la terminal, para inicializar una aplicación Nodo con un package.json archivo que nos permite rastrear las dependencias de la aplicación:

$ npm init

package name: (codes) integrating-mongodb-node
version: (1.0.0)
description: learning how to connect mongodb to a node app
entry point: (server.js)
test command:
git repository:
keywords:
author:
Is this OK? (yes) yes

Consulte nuestra guía práctica y práctica para aprender Git, con las mejores prácticas, los estándares aceptados por la industria y la hoja de trucos incluida. Deja de buscar en Google los comandos de Git y, de hecho, aprenden ella!

Ahora que hemos inicializado exitosamente package.json, sigamos adelante para instalar dos paquetes que serán útiles para construir nuestro servidor. El primero es Express.js, que es un marco web para el desarrollo rápido y sencillo de aplicaciones Node:

$ yarn add express -D

El segundo paquete que instalaríamos es el paquete Mongoose, que nos ayudaría a crear un esquema apropiado para nuestra base de datos en la aplicación Node:

$ yarn add mongoose -D

Con las dependencias de desarrollo requeridas ahora instaladas exitosamente, ahora podemos escribir código para conectar nuestra base de datos MongoDB a nuestra aplicación Node.

En el directorio que acabamos de crear para el proyecto, cree un server.js presentar

$ touch server.js

A continuación, definimos la configuración básica para la aplicación Node en server.js, creando un servidor express simple.



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

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Podemos confirmar que nuestro servidor está funcionando como debería ejecutando el siguiente código en la terminal.

$ node server.js

Lo que debería resultar en:

Server started at port 8000

Ahora, puede regresar a su panel de MongoDB para copiar el URI (identificador uniforme de recursos) para conectar la aplicación Node a la base de datos.

I server.js cree una variable para almacenar el identificador uniforme de recursos y en el URI reemplace con la contraseña de su cuenta MongoDB.



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

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";

const port = 8000;

app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

A continuación, creamos una función asíncrona para permitirnos conectarnos a MongoDB, porque no sabemos cuánto tiempo puede tardar en completarse la función antes de que nos conectemos a la base de datos:

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

const uri =
  "mongodb+srv://UcheAzubuko:@stackabusecluster.fgavg5s.mongodb.net/?retryWrites=true&w=majority";
async function connect() {
  try {
    await mongoose.connect(uri);
    console.log("Connected to MongoDB");
  } catch (error) {
    console.log(error);
  }
}
connect();

const port = 8000;
app.listen(port, () => {
  console.log(`Server started at port ${port}`);
});

Hemos creado una función asincrónica que registra un Connected to MongoDB mensaje cuando se haya establecido correctamente una conexión entre MongoDB y la aplicación Node, y registre cualquier error si se produce un error.

Ahora, deberíamos reiniciar el servidor:

$ node server.js

Y recibirá un mensaje de éxito que nos informa que ahora se ha establecido una conexión segura entre la base de datos MongoDB y la aplicación Node:

Server started at port 8000
Connected to MongoDB

En este punto, cuando regrese al panel de control de su grupo de proyectos, verá información que muestra que ha habido una conexión a la base de datos recientemente:

Integrando MongoDB con Node.js PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

¡Muy bien amigos, eso es todo! Hemos integrado con éxito una base de datos MongoDB dentro de una aplicación Node.js.

Conclusión

En este artículo, hemos aprendido cómo crear una conexión segura entre una aplicación Node.js y una base de datos MongoDB. Ahora, puedes hacer lo mismo fácilmente cuando necesites crear una aplicación usando MongoDB; una base de datos no relacional muy popular en el ecosistema.

No olvides que el Documentación de MongoDB es su mejor amigo para aprender sobre MongoDB y, para obtener más información sobre cómo crear aplicaciones Express, comuníquese con el Documentación exprés

Si te quedas atascado mientras sigues el tutorial, siéntete libre de pensar en el repositorio de GitHub para el proyecto para encontrar tu camino.

Recursos adicionales

Sello de tiempo:

Mas de Abuso de pila