Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
GÄLLER FÖR: 
              
               MongoDB
Den här artikeln visar hur du ansluter till Azure Cosmos DB för MongoDB med det interna MongoDB npm-paketet. När du är ansluten kan du utföra åtgärder på databaser, samlingar och dokument.
API för MongoDB-referensdokumentation | MongoDB-paket (npm)
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- Node.js LTS
- Azures kommandoradsgränssnitt (CLI) eller Azure PowerShell
- Azure Cosmos DB för MongoDB-resurs
Skapa en ny JavaScript-app
- Skapa ett nytt JavaScript-program i en tom mapp med hjälp av önskad terminal. - npm initAnvänd kommandot för att starta anvisningarna för att skapa- package.jsonfilen. Acceptera standardinställningarna för prompterna.- npm init
- Lägg till MongoDB npm-paketet i JavaScript-projektet. - npm install packageAnvänd kommandot som anger namnet på npm-paketet. Paketet- dotenvanvänds för att läsa miljövariablerna från en- .envfil under den lokala utvecklingen.- npm install mongodb dotenv
- Om du vill köra appen använder du en terminal för att navigera till programkatalogen och köra programmet. - node index.js
Ansluta med den inbyggda MongoDB-drivrutinen till Azure Cosmos DB för MongoDB
Skapa en instans av MongoClient klassen för att ansluta med den inbyggda MongoDB-drivrutinen till Azure Cosmos DB. Den här klassen är utgångspunkten för att utföra alla åtgärder mot databaser.
Den vanligaste konstruktorn för MongoClient har två parametrar:
| Parameter | Exempelvärde | beskrivning | 
|---|---|---|
| url | COSMOS_CONNECTION_STRINGmiljövariabel | API för MongoDB-anslutningssträng som ska användas för alla begäranden | 
| options | {ssl: true, tls: true, } | MongoDB-alternativ för anslutningen. | 
Se felsökningsguiden för anslutningsproblem.
Hämta resursnamn
- Skapa en gränssnittsvariabel för resourceGroupName. - # Variable for resource group name resourceGroupName="msdocs-cosmos"
- az cosmosdb listAnvänd kommandot för att hämta namnet på det första Azure Cosmos DB-kontot i resursgruppen och lagra det i variabeln accountName-gränssnittet.- # Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Hämta anslutningssträngen
- Leta upp API:et för MongoDB-anslutningssträng från listan över anslutningssträng för kontot med - az cosmosdb keys listkommandot .- az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
- Registrera primärnyckelvärdena. Du använder dessa autentiseringsuppgifter senare. 
Konfigurera miljövariabler
Om du vill använda VÄRDENA FÖR ANSLUTNINGSSTRÄNG i koden anger du det här värdet i den lokala miljö som kör programmet. Om du vill ange miljövariabeln använder du önskad terminal för att köra följande kommandon:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
Skapa MongoClient med anslutningssträng
- Lägg till beroenden för att referera till MongoDB- och DotEnv npm-paketen. - // Use official mongodb driver to connect to the server import { MongoClient } from 'mongodb';
- Definiera en ny instans av - MongoClientklassen med konstruktorn och- process.env.använd anslutningssträng.- // 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`)}` );
Mer information om olika sätt att skapa en MongoClient instans finns i Snabbstart för MongoDB NodeJS-drivrutin.
Stäng MongoClient-anslutningen
När programmet är klart med anslutningen ska du komma ihåg att stänga det. Anropet .close() ska ske när alla databasanrop har gjorts.
client.close()
Använda MongoDB-klientklasser med Azure Cosmos DB för API för MongoDB
Innan du börjar skapa programmet ska vi titta på resurshierarkin i Azure Cosmos DB. Azure Cosmos DB har en specifik objektmodell som används för att skapa och komma åt resurser. Azure Cosmos DB skapar resurser i en hierarki som består av konton, databaser, samlingar och dokument.
               
              
            
Hierarkiskt diagram som visar ett Azure Cosmos DB för MongoDB-konto högst upp. Kontot har två underordnade databasnoder. En av databasnoderna innehåller två underordnade samlingsnoder. Den andra databasnoden innehåller en enda underordnad samlingsnod. Den enda samlingsnoden har tre underordnade doc-noder.
Varje typ av resurs representeras av en eller flera associerade JavaScript-klasser. Här är en lista över de vanligaste klasserna:
| Klass | beskrivning | 
|---|---|
| MongoClient | Den här klassen ger en logisk representation på klientsidan för API:et för MongoDB-lagret i Azure Cosmos DB. Klientobjektet används för att konfigurera och köra begäranden mot tjänsten. | 
| Db | Den här klassen är en referens till en databas som kanske, eller kanske inte, finns i tjänsten ännu. Databasen verifieras på serversidan när du försöker komma åt den eller utföra en åtgärd mot den. | 
| Collection | Den här klassen är en referens till en samling som kanske inte heller finns i tjänsten ännu. Samlingen verifieras på serversidan när du försöker arbeta med den. | 
Följande guider visar hur du använder var och en av dessa klasser för att skapa ditt program.
Guide:
Se även
Nästa steg
Nu när du har anslutit till ett API för MongoDB-konto använder du nästa guide för att skapa och hantera databaser.
