Comece a usar o Azure Cosmos DB para NoSQL usando JavaScript

Este artigo mostra-lhe como se ligar ao Azure Cosmos DB para NoSQL usando o SDK JavaScript. Uma vez ligado, pode realizar operações em bases de dados, contentores e itens.

Pacote (npm) | Referência da API | Código-fonte da biblioteca | Fornecer Feedback

Pré-requisitos

Configure o seu projeto local

  1. Crie um novo diretório para o seu projeto JavaScript num bash shell.

    mkdir cosmos-db-nosql-javascript-samples && cd ./cosmos-db-nosql-javascript-samples
    
  2. Crie uma nova aplicação JavaScript usando o npm init comando com o modelo da consola .

    npm init -y
    
  3. Instale a dependência necessária para o Azure Cosmos DB for NoSQL JavaScript SDK.

    npm install @azure/cosmos
    

Conectar-se ao Azure Cosmos DB para NoSQL

Para se ligar à API de NoSQL da Azure Cosmos DB, crie uma instância da classe CosmosClient. Essa classe é o ponto de partida para executar todas as operações em bancos de dados.

Para se ligar à sua API para a conta NoSQL usando o Microsoft Entra, utilize um princípio de segurança. O tipo exato de principal depende de onde hospeda o código da aplicação. A tabela abaixo serve como um guia de referência rápida.

Onde o aplicativo é executado Principal de segurança
Máquina local (desenvolvimento e testes) Identidade do usuário ou principal de serviço
Azure Identidade gerenciada
Servidores ou clientes fora do Azure Serviço principal

Importação @azure/identity

O pacote npm @azure/identity contém funcionalidades essenciais de autenticação que são partilhadas entre todas as bibliotecas do SDK do Azure.

  1. Importa o pacote npm @azure/identidade usando o npm install comando.

    npm install @azure/identity
    
  2. No teu editor de código, adiciona as dependências.

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

Criar CosmosClient com implementação de credenciais padrão

Se estiveres a testar numa máquina local, ou se a tua aplicação correr em serviços Azure com suporte direto para identidades geridas, obtém um token OAuth criando uma instância DefaultAzureCredential. Depois cria uma nova instância da classe CosmosClient com a COSMOS_ENDPOINT variável ambiente e o objeto TokenCredential como parâmetros.

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

const credential = new DefaultAzureCredential();

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

Compilar a aplicação

À medida que você cria seu aplicativo, seu código interage principalmente com quatro tipos de recursos:

  • A API para a conta NoSQL, que é o único namespace de nível superior para os seus dados do Azure Cosmos DB.

  • Bases de dados, que organizam os contentores na sua conta.

  • Contêineres, que contêm um conjunto de itens individuais em seu banco de dados.

  • Itens, que representam um documento JSON em seu contêiner.

O diagrama seguinte mostra a relação entre estes recursos.

Diagrama da hierarquia do Azure Cosmos DB, incluindo contas, bancos de dados, contêineres e itens.

Diagrama hierárquico que mostra uma conta de base de dados Azure Cosmos no topo. A conta tem dois nós de banco de dados subordinados. Um dos nós de banco de dados inclui dois nós de contêiner filho. O outro nó do banco de dados inclui um único nó de contêiner filho. Esse único nó de contêiner tem três nós de item filho.

Cada tipo de recurso é representado por uma ou mais classes associadas. Aqui está uma lista das classes mais comuns:

Class Description
CosmosClient Essa classe fornece uma representação lógica do lado do cliente para o serviço Azure Cosmos DB. O objeto cliente é usado para configurar e executar solicitações no serviço.
Database Esta classe é uma referência a uma base de dados que pode, ou não, existir ainda no serviço. A base de dados é validada do lado do servidor quando tenta aceder a ela ou realizar uma operação contra ela.
Container Esta classe é uma referência a um contentor que também pode ainda não existir no serviço. O contentor é validado do lado do servidor quando tentas trabalhar com ele.

Os seguintes guias mostram-lhe como usar cada uma destas classes para construir a sua aplicação.

Guia Description
Criar uma base de dados Criar bases de dados
Criar um contêiner Criar contêineres
Crie e leia um item Leitura direcionada de um item específico
Itens de consulta Consultar múltiplos itens

Consulte também

Passos seguintes