Menu
CoddyTech

Se connecter à MongoDB

Fait partie de la section Bases de données avec MongoDB du Journey Node.js de Coddy. Leçon 3 sur 29.

Votre programme accède à MongoDB par l’intermédiaire d’un objet client. Importez MongoClient et créez-en un avec une adresse de connexion. L’adresse ci-dessous désigne MongoDB sur le même ordinateur : localhost. Le nombre 27017 est le port sur lequel ce service de base de données est à l’écoute.

const client = new MongoClient('mongodb://localhost:27017');
const db = client.db('shop');
const orders = db.collection('orders');

La première ligne configure le client ; les deux suivantes sélectionnent une base de données et une collection. Ces lignes ne lisent aucun enregistrement. Dans Coddy, la connexion est fournie par une base de données d’entraînement qui est réinitialisée à chaque clic sur « Jouer ». Un déploiement MongoDB normal conserve les données même après le redémarrage d’une application.

Créez le client au niveau du module afin que les requêtes le réutilisent. Créer un client à l’intérieur de la fonction de requête créerait un nouveau pool de connexions à chaque requête avec le pilote réel.

challenge icon

Défi

Facile

Modifie connection.js. Remplace l’espace réservé par un client utilisant mongodb://localhost:27017, la base de données shelf et sa collection books.

Crée ces valeurs en dehors de selectBooks(). Fais en sorte que cette fonction renvoie la collection sélectionnée, afin que chaque requête la réutilise. La route fournie lit la collection pour toi. Essaie « Jouer » : GET /result devrait afficher Dune, Kindred et Emma. Aucun code d’insertion ni de route n’est nécessaire.

La route GET /reuse fournie renvoie {"same":true} lorsque des appels répétés reçoivent le même handle de collection.

Essayez vous-même

import { MongoClient } from 'mongodb';
// Créez le client, sélectionnez la base de données et remplacez cette valeur provisoire.
const books = null;
export function selectBooks() {
    return books;
}

Toutes les leçons de Bases de données avec MongoDB

Entraînez-vous par vous-même : Playground Express