Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’APPLIQUE À :
Mongodb
Important
Voulez-vous migrer une application MongoDB existante ou utiliser des fonctionnalités MQL (MongoDB Query Language) ? Considérez Azure DocumentDB.
Recherchez-vous une solution de base de données pour des scénarios à grande échelle avec un contrat de niveau de service de disponibilité (SLA) de 99,999%, une mise à l’échelle automatique instantanée et un basculement automatique entre plusieurs régions ? Envisagez Azure Cosmos DB pour NoSQL.
Cet article explique comment vous connecter à Azure Cosmos DB pour MongoDB à l’aide du package npm MongoDB natif. Une fois connecté, vous pouvez effectuer des opérations sur des bases de données, des collections et des documents.
Note
Les exemples d’extraits de code sont disponibles sur GitHub sous la forme d’un projet JavaScript.
Documentation de référence de l’API pour MongoDB | Package MongoDB (npm)
Prerequisites
- Un compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Node.js LTS
- Azure Command-Line Interface (CLI) ou Azure PowerShell
- Ressource Azure Cosmos DB pour MongoDB
Créer une application JavaScript
Créez une application JavaScript dans un dossier vide à l’aide de votre terminal préféré. Utilisez la commande
npm initafin de commencer les invites pour créer le fichierpackage.json. Acceptez les paramètres par défaut pour les demandes.npm initAjoutez le package npm MongoDB au projet JavaScript. Utilisez la
npm install packagecommande spécifiant le nom du package npm. Le packagedotenvest utilisé pour lire les variables d’environnement à partir d’un fichier.envpendant le développement local.npm install mongodb dotenvPour exécuter l’application, utilisez un terminal pour accéder au répertoire de l’application et exécuter l’application.
node index.js
Se connecter avec le pilote natif MongoDB à Azure Cosmos DB pour MongoDB
Pour vous connecter au pilote natif MongoDB à Azure Cosmos DB, créez une instance de la classe MongoClient. Cette classe est le point de départ pour effectuer toutes les opérations sur des bases de données.
Le constructeur le plus courant pour MongoClient a deux paramètres :
| Paramètre | Exemple de valeur | Description |
|---|---|---|
url |
COSMOS_CONNECTION_STRING variable d’environnement |
API pour la chaîne de connexion MongoDB à utiliser pour toutes les requêtes |
options |
{ssl: true, tls: true, } |
Options MongoDB pour la connexion. |
Reportez-vous au guide de résolution des problèmes de connexion.
Obtenir le nom de la ressource
Créez une variable d’interpréteur de commandes pour resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"Utilisez la commande
az cosmosdb listpour récupérer le nom du premier compte Azure Cosmos DB dans votre groupe de ressources et le stocker dans la variable d’interpréteur de commandes accountName.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Récupération de votre chaîne de connexion
Recherchez la chaîne de connexion de l’API MongoDB dans la liste des chaînes de connexion du compte à l’aide de la commande
az cosmosdb keys list.az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountNameEnregistrez les valeurs de CLÉ PRIMAIRE. Vous aurez besoin de ces informations d’identification ultérieurement.
Configurer les variables d’environnement
Pour utiliser les valeurs de CHAÎNE DE CONNEXION dans votre code, définissez cette valeur dans l’environnement local exécutant l’application. Pour définir la variable d’environnement, utilisez votre terminal préféré pour exécuter les commandes suivantes :
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
Créer un client MongoClient avec une chaîne de connexion
Ajoutez des dépendances pour référencer les packages MongoDB et DotEnv npm.
// Use official mongodb driver to connect to the server import { MongoClient } from 'mongodb';Définissez une nouvelle instance de la classe
MongoClientà l’aide du constructeur etprocess.env.pour utiliser le chaîne de connexion.// New instance of MongoClient with connection string // for Cosmos DB const url = process.env.COSMOS_CONNECTION_STRING; const client = new MongoClient(url); // connect to the server await client.connect(); // client options const options = client.options; console.log( `Options:\n${Object.keys(options).map(key => `\t${key}: ${options[key]}\n`)}` );
Pour plus d’informations sur les différentes façons de créer une MongoClient instance, consultez Démarrage rapide du pilote NodeJS MongoDB.
Fermer la connexion MongoClient
Lorsque votre application en a terminé avec la connexion, n’oubliez pas de la fermer. L’appel .close() doit être une fois que tous les appels de base de données sont effectués.
client.close()
Utiliser des classes de clients MongoDB avec l’API Azure Cosmos DB for MongoDB
Avant de commencer à générer l’application, examinons la hiérarchie des ressources dans Azure Cosmos DB. Azure Cosmos DB a un modèle objet spécifique utilisé pour créer et accéder aux ressources. Azure Cosmos DB crée des ressources dans une hiérarchie qui se compose de comptes, de bases de données, de collections et de documents.
Diagramme hiérarchique montrant un compte Azure Cosmos DB pour MongoDB en haut. Le compte présente deux nœuds de base de données enfants. L’un des nœuds de base de données comprend deux nœuds de collection enfants. L’autre nœud de base de données inclut un nœud de collection enfant unique. Ce nœud de collection unique compte trois nœuds de documentation enfants.
Chaque type de ressource est représenté par une ou plusieurs classes JavaScript associées. Voici une liste des classes les plus courantes :
| Classe | Description |
|---|---|
MongoClient |
Cette classe fournit une représentation logique côté client pour la couche d’API MongoDB dans Azure Cosmos DB. Ce client est utilisé pour configurer et exécuter des requêtes sur le service. |
Db |
Cette classe est une référence à une base de données qui peut exister, ou non, dans le service. La base de données est validée côté serveur lorsque vous tentez d’y accéder ou d’effectuer une opération sur celle-ci. |
Collection |
Cette classe est une référence à une collection qui n’existe pas encore dans le service. La collection est validée côté serveur lorsque vous tentez de l’utiliser. |
Les guides suivantes vous montrent comment utiliser chacune de ces classes pour générer votre application.
Guide :
- Gérer des bases de données
- Gérer les collections
- Gérer des documents
- Rechercher des documents à l’aide de requêtes
Voir également
Étapes suivantes
Une fois que vous avez établi une connexion à un compte d’API pour MongoDB, utilisez le guide suivant pour créer et gérer des bases de données.