Condividi tramite


Introduzione ad Azure Cosmos DB for NoSQL con JavaScript

SI APPLICA A: NoSQL

Questo articolo illustra come connettersi ad Azure Cosmos DB for NoSQL usando JavaScript SDK. Una volta stabilita la connessione, è possibile eseguire operazioni su database, contenitori ed elementi.

Pacchetto (npm) | Esempi | Riferimento API | Codice sorgente della libreria | Inviare feedback

Prerequisiti

Configurare il progetto locale

  1. Creare una nuova directory per il progetto JavaScript in una shell bash.

    mkdir cosmos-db-nosql-javascript-samples && cd ./cosmos-db-nosql-javascript-samples
    
  2. Creare una nuova applicazione JavaScript usando il comando npm init con il modello di console.

    npm init -y
    
  3. Installare la dipendenza necessaria per Azure Cosmos DB for NoSQL JavaScript SDK.

    npm install @azure/cosmos
    

Connettersi ad Azure Cosmos DB for NoSQL

Per connettersi all'API for NoSQL di Azure Cosmos DB, creare un'istanza della classe CosmosClient. Questa classe è il punto di partenza per eseguire qualsiasi operazione sui database.

Per connettersi all'account API per NoSQL usando Microsoft Entra, usare un'entità di sicurezza. Il tipo esatto di entità di sicurezza dipende da dove viene ospitato il codice dell'applicazione. La tabella seguente funge da guida di riferimento rapido.

Dove viene eseguita l'applicazione Entità di sicurezza principale
Computer locale (sviluppo e test) Identità utente o entità servizio
Azure Identità gestita
Server o client esterni ad Azure Entità servizio

Importare @azure/identity

Il pacchetto npm @azure/identity contiene funzionalità di autenticazione di base condivise tra tutte le librerie di Azure SDK.

  1. Importare il pacchetto npm @azure/identity usando il comando npm install.

    npm install @azure/identity
    
  2. Nell'editor di codice, aggiungere le dipendenze.

    const { DefaultAzureCredential } = require("@azure/identity");
    

Creare CosmosClient con implementazione di credenziali predefinite

Se si sta eseguendo un test su un computer locale o se l'applicazione verrà eseguita su servizi di Azure con supporto diretto per le identità gestite, ottenere un token OAuth creando un'istanza DefaultAzureCredential. Poi, creare una nuova istanza della classe CosmosClient con la variabile di ambiente COSMOS_ENDPOINT e l'oggetto TokenCredential come parametri.

const { CosmosClient } = require("@azure/cosmos");
const { DefaultAzureCredential } = require("@azure/identity");

const credential = new DefaultAzureCredential();

const cosmosClient = new CosmosClient({ 
    endpoint, 
    aadCredentials: credential
});

Compilare l'applicazione

Durante la compilazione dell'applicazione, il codice interagirà principalmente con quattro tipi di risorse:

  • Account API for NoSQL, ovvero lo spazio dei nomi di primo livello univoco per i dati di Azure Cosmos DB.

  • Database, che organizzano i contenitori nell'account.

  • Contenitori, che contengono una serie di singoli elementi nel database.

  • Elementi, che rappresentano un documento JSON nel contenitore.

Il diagramma seguente mostra la relazione tra queste risorse.

Diagramma della gerarchia di Azure Cosmos DB, che include account, database, contenitori ed elementi.

Diagramma gerarchico che mostra al vertice un account di Azure Cosmos DB. L'account presenta due nodi database figlio. Uno dei nodi del database include due nodi contenitore figlio. L'altro nodo del database include un singolo nodo contenitore figlio. Tale nodo contenitore singolo include tre nodi elemento figlio.

Ogni tipo di risorsa è rappresentato da una o più classi associate. Ecco un elenco delle classi più comuni:

Classe Descrizione
CosmosClient Questa classe fornisce una rappresentazione logica lato client per il servizio Azure Cosmos DB. L'oggetto client viene usato per configurare ed eseguire richieste nel servizio.
Database Questa classe è un riferimento a un database che potrebbe esistere o meno nel servizio. Il database viene convalidato sul lato server quando si prova ad accedervi o a eseguire un'operazione su di esso.
Container Questa classe è un riferimento a un contenitore che potrebbe non esistere ancora nel servizio. Il contenitore viene convalidato sul lato server quando si prova a usarlo.

Nelle guide seguenti viene illustrato come usare ognuna di queste classi per creare l'applicazione.

Guida Descrizione
Creare un database Creare database
Creare un contenitore Crea contenitori
Creare e leggere un elemento Lettura diretta di un elemento specifico
Eseguire query sugli elementi Eseguire query su più elementi

Vedi anche

Passaggi successivi