Conexión a MongoDB
Parte de la sección Bases de datos con MongoDB del Journey de Node.js de Coddy. Lección 3 de 29.
Tu programa llega a MongoDB a través de un objeto cliente. Importa MongoClient y crea uno con una dirección de conexión. La dirección de abajo indica MongoDB en el mismo ordenador: localhost. El número 27017 es el puerto en el que escucha ese servicio de base de datos.
const client = new MongoClient('mongodb://localhost:27017');
const db = client.db('shop');
const orders = db.collection('orders');La primera línea configura el cliente; las dos siguientes seleccionan una base de datos y una colección. Estas líneas no leen registros. En Coddy, la conexión la proporciona una base de datos de práctica que se restablece al pulsar «Ejecutar». Una implementación normal de MongoDB conserva los datos aunque se reinicie una aplicación.
Crea el cliente en el ámbito del módulo para que las solicitudes lo reutilicen. Crear un cliente dentro de la función de solicitud crearía un nuevo grupo de conexiones en cada solicitud con el controlador real.
Desafío
FácilEdita connection.js. Reemplaza el marcador de posición por un cliente que use mongodb://localhost:27017, la base de datos shelf y su colección books.
Crea estos valores fuera de selectBooks(). Haz que esa función devuelva la colección seleccionada, para que cada solicitud la reutilice. La ruta proporcionada lee la colección por ti. Prueba ejecutando: GET /result debería mostrar Dune, Kindred y Emma. No se necesita código de inserción ni de rutas.
La ruta proporcionada GET /reuse devuelve {"same":true} cuando las llamadas repetidas reciben el mismo identificador de colección.
Pruébalo tú mismo
import { MongoClient } from 'mongodb';
// Crea el cliente, selecciona la base de datos y reemplaza este marcador de posición.
const books = null;
export function selectBooks() {
return books;
}
Todas las lecciones de Bases de datos con MongoDB
1Documentos
Un libro como documentoColecciones y bases de datosConexión a MongoDBLectura de documentos almacenadosInserción de documentosBúsqueda de un documentoBúsqueda por ObjectIdComparación de númerosFiltros de consultaSelección de los campos devueltosOrdenación de los resultados de consultaConservar los primeros resultadosProyección, ordenación y límite2Modificación de documentos
Actualización de documentosOperadores de actualizaciónPractica por tu cuenta: Playground de Express