Criar um aplicativo Node.js com o SDK do Azure para JavaScript
Este documento mostra exemplos de como usar o SDK do Azure para JavaScript para acessar valores-chave na Configuração do Aplicativo do Azure.
Importante
A Configuração do Aplicativo oferece uma biblioteca de provedor JavaScript criada sobre o SDK do JavaScript e projetada para ser mais fácil de usar com recursos mais avançados. Ele permite que as definições de configuração sejam usadas como um objeto Map e oferece outros recursos, como composição de configuração de vários rótulos, corte de nome de chave e resolução automática de referências do Cofre de Chaves. Vá para o início rápido do JavaScript para saber mais.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa - Crie uma gratuitamente
- Uma loja de configuração de aplicativos. Crie uma loja.
- Versões LTS do Node.js. Para obter informações sobre como instalar Node.js diretamente no Windows ou usando o Subsistema Windows para Linux (WSL), consulte Introdução ao Node.js
Criar um valor-chave
Adicione o seguinte valor-chave à loja de Configuração de Aplicativos e deixe Rótulo e Tipo de Conteúdo com seus valores padrão. Para obter mais informações sobre como adicionar valores-chave a uma loja usando o portal do Azure ou a CLI, vá para Criar um valor-chave.
Key | valor |
---|---|
TestApp:Configurações:Mensagem | Dados da Configuração do Aplicativo do Azure |
Configurar a aplicação Node.js
Neste tutorial, você criará um novo diretório para o projeto chamado app-configuration-example.
mkdir app-configuration-example
Alterne para o diretório app-configuration-example recém-criado.
cd app-configuration-example
Instale a biblioteca de cliente de Configuração de Aplicativo do Azure usando o
npm install
comando.npm install @azure/app-configuration
Crie um novo arquivo chamado app-configuration-example.js no diretório app-configuration-example e adicione o seguinte código:
const { AppConfigurationClient } = require("@azure/app-configuration"); async function run() { console.log("Azure App Configuration - JavaScript example"); // Example code goes here } run().catch(console.error);
Nota
Os trechos de código neste exemplo ajudarão você a começar a usar a biblioteca de cliente de Configuração de Aplicativo para JavaScript. Para o seu pedido, você também deve considerar o tratamento de exceções de acordo com suas necessidades. Para saber mais sobre o tratamento de exceções, consulte nossa documentação do JavaScript SDK.
Amostras de código
Os trechos de código de exemplo nesta seção mostram como executar operações comuns com a biblioteca de cliente de Configuração de Aplicativo para JavaScript. Adicione esses trechos de código ao corpo da run
função em app-configuration-example.js arquivo criado anteriormente.
Nota
A biblioteca de cliente de Configuração de Aplicativo refere-se a um objeto chave-valor como ConfigurationSetting
. Portanto, neste artigo, os valores-chave no App Configuration store serão chamados de definições de configuração.
Saiba abaixo como:
- Conectar-se a uma loja de configuração de aplicativos
- Obter uma definição de configuração
- Adicionar uma definição de configuração
- Obter uma lista de definições de configuração
- Bloquear uma definição de configuração
- Desbloquear uma definição de configuração
- Atualizar uma definição de configuração
- Excluir uma definição de configuração
Conectar-se a uma loja de configuração de aplicativos
O trecho de código a seguir cria uma instância de AppConfigurationClient. Você pode se conectar à sua loja de Configuração de Aplicativos usando a ID do Microsoft Entra (recomendado) ou uma cadeia de conexão.
Você usa o para autenticar em DefaultAzureCredential
sua loja de configuração de aplicativos. Siga as instruções para atribuir à sua credencial a função de Leitor de Dados de Configuração do Aplicativo. Certifique-se de dar tempo suficiente para que a permissão se propague antes de executar seu aplicativo.
const { DefaultAzureCredential } = require("@azure/identity");
const { AppConfigurationClient } = require("@azure/app-configuration");
const client = new AppConfigurationClient(
process.env.AZURE_APPCONFIG_ENDPOINT,
new DefaultAzureCredential()
);
Obter uma definição de configuração
O trecho de código a seguir recupera uma definição de configuração por key
nome.
const retrievedConfigSetting = await client.getConfigurationSetting({
key: "TestApp:Settings:Message"
});
console.log("\nRetrieved configuration setting:");
console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);
Adicionar uma definição de configuração
O trecho de código a seguir cria um ConfigurationSetting
objeto com key
e value
campos e invoca o addConfigurationSetting
método.
Esse método lançará uma exceção se você tentar adicionar uma definição de configuração que já existe em sua loja. Se você quiser evitar essa exceção, o método setConfigurationSetting pode ser usado.
const configSetting = {
key:"TestApp:Settings:NewSetting",
value:"New setting value"
};
const addedConfigSetting = await client.addConfigurationSetting(configSetting);
console.log("\nAdded configuration setting:");
console.log(`Key: ${addedConfigSetting.key}, Value: ${addedConfigSetting.value}`);
Obter uma lista de definições de configuração
O trecho de código a seguir recupera uma lista de definições de configuração. Os keyFilter
argumentos e labelFilter
podem ser fornecidos para filtrar valores-chave com base em key
e label
respectivamente. Para obter mais informações sobre filtragem, consulte como consultar definições de configuração.
const filteredSettingsList = client.listConfigurationSettings({
keyFilter: "TestApp*"
});
console.log("\nRetrieved list of configuration settings:");
for await (const filteredSetting of filteredSettingsList) {
console.log(`Key: ${filteredSetting.key}, Value: ${filteredSetting.value}`);
}
Bloquear uma definição de configuração
O status de bloqueio de um valor-chave na Configuração do Aplicativo é indicado pelo readOnly
atributo do ConfigurationSetting
objeto. Se readOnly
for true
, a configuração está bloqueada. O setReadOnly
método pode ser invocado com true
como o segundo argumento para bloquear a definição de configuração.
const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
console.log(`\nRead-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);
Desbloquear uma definição de configuração
Se o readOnly
atributo de a ConfigurationSetting
for false
, a configuração será desbloqueada. O setReadOnly
método pode ser invocado com false
como o segundo argumento para desbloquear a definição de configuração.
const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
console.log(`\nRead-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);
Atualizar uma definição de configuração
O setConfigurationSetting
método pode ser usado para atualizar uma configuração existente ou criar uma nova configuração. O trecho de código a seguir altera o valor de uma definição de configuração existente.
addedConfigSetting.value = "Value has been updated!";
const updatedConfigSetting = await client.setConfigurationSetting(addedConfigSetting);
console.log("\nUpdated configuration setting:");
console.log(`Key: ${updatedConfigSetting.key}, Value: ${updatedConfigSetting.value}`);
Excluir uma definição de configuração
O trecho de código a seguir exclui uma definição de configuração por key
nome.
const deletedConfigSetting = await client.deleteConfigurationSetting({
key: "TestApp:Settings:NewSetting"
});
console.log("\nDeleted configuration setting:");
console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);
Executar a aplicação
Neste exemplo, você criou um aplicativo Node.js que usa a biblioteca de cliente de Configuração de Aplicativo do Azure para recuperar uma definição de configuração criada por meio do portal do Azure, adicionar uma nova configuração, recuperar uma lista de configurações existentes, bloquear e desbloquear uma configuração, atualizar uma configuração e, finalmente, excluir uma configuração.
Neste ponto, seu arquivo de app-configuration-example.js deve ter o seguinte código:
const { DefaultAzureCredential } = require("@azure/identity");
const { AppConfigurationClient } = require("@azure/app-configuration");
async function run() {
console.log("Azure App Configuration - JavaScript example");
const client = new AppConfigurationClient(
process.env.AZURE_APPCONFIG_ENDPOINT,
new DefaultAzureCredential()
);
const retrievedConfigSetting = await client.getConfigurationSetting({
key: "TestApp:Settings:Message"
});
console.log("\nRetrieved configuration setting:");
console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);
const configSetting = {
key: "TestApp:Settings:NewSetting",
value: "New setting value"
};
const addedConfigSetting = await client.addConfigurationSetting(configSetting);
console.log("Added configuration setting:");
console.log(`Key: ${addedConfigSetting.key}, Value: ${addedConfigSetting.value}`);
const filteredSettingsList = client.listConfigurationSettings({
keyFilter: "TestApp*"
});
console.log("Retrieved list of configuration settings:");
for await (const filteredSetting of filteredSettingsList) {
console.log(`Key: ${filteredSetting.key}, Value: ${filteredSetting.value}`);
}
const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
console.log(`Read-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);
const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
console.log(`Read-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);
addedConfigSetting.value = "Value has been updated!";
const updatedConfigSetting = await client.setConfigurationSetting(addedConfigSetting);
console.log("Updated configuration setting:");
console.log(`Key: ${updatedConfigSetting.key}, Value: ${updatedConfigSetting.value}`);
const deletedConfigSetting = await client.deleteConfigurationSetting({
key: "TestApp:Settings:NewSetting"
});
console.log("Deleted configuration setting:");
console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);
}
run().catch(console.error);
Configurar uma variável de ambiente
Configure uma variável de ambiente usando o Microsoft Entra ID (recomendado) ou uma cadeia de conexão.
Defina uma variável de ambiente chamada AZURE_APPCONFIG_ENDPOINT para o ponto de extremidade da sua loja de Configuração de Aplicativos encontrado em Visão geral da sua loja no portal do Azure.
Se você usar o prompt de comando do Windows, execute o seguinte comando e reinicie o prompt de comando para permitir que a alteração entre em vigor:
setx AZURE_APPCONFIG_ENDPOINT "endpoint-of-your-app-configuration-store"
Se você usar o PowerShell, execute o seguinte comando:
$Env:AZURE_APPCONFIG_ENDPOINT = "endpoint-of-your-app-configuration-store"
Se você usa macOS ou Linux, execute o seguinte comando:
export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
Na janela do console, navegue até o diretório que contém o arquivo app-configuration-example.js e execute o seguinte comando para executar o aplicativo:
node app.js
Deverá ver o seguinte resultado:
Azure App Configuration - JavaScript example Retrieved configuration setting: Key: TestApp:Settings:Message, Value: Data from Azure App Configuration Added configuration setting: Key: TestApp:Settings:NewSetting, Value: New setting value Retrieved list of configuration settings: Key: TestApp:Settings:Message, Value: Data from Azure App Configuration Key: TestApp:Settings:NewSetting, Value: New setting value Read-only status for TestApp:Settings:NewSetting: true Read-only status for TestApp:Settings:NewSetting: false Updated configuration setting: Key: TestApp:Settings:NewSetting, Value: Value has been updated! Deleted configuration setting: Key: TestApp:Settings:NewSetting, Value: Value has been updated!
Clean up resources (Limpar recursos)
Se não quiser continuar a utilizar os recursos criados neste artigo, elimine o grupo de recursos que criou aqui para evitar cobranças.
Importante
A eliminação de um grupo de recursos é irreversível. O grupo de recursos e todos os recursos nele contidos são excluídos permanentemente. Certifique-se de não excluir acidentalmente o grupo de recursos ou recursos errados. Se você criou os recursos para este artigo dentro de um grupo de recursos que contém outros recursos que deseja manter, exclua cada recurso individualmente de seu respetivo painel em vez de excluir o grupo de recursos.
- Entre no portal do Azure e selecione Grupos de recursos.
- Na caixa Filtrar por nome, introduza o nome do seu grupo de recursos.
- Na lista de resultados, selecione o nome do grupo de recursos para ver uma visão geral.
- Selecione Eliminar grupo de recursos.
- É-lhe pedido que confirme a eliminação do grupo de recursos. Insira o nome do grupo de recursos a ser confirmado e selecione Excluir.
Após alguns momentos, o grupo de recursos e todos os seus recursos são excluídos.
Próximos passos
Este guia mostrou como usar o SDK do Azure para JavaScript para acessar valores de chave na Configuração do Aplicativo do Azure.
Para obter exemplos de código adicionais, visite:
Para saber como usar a Configuração de Aplicativo do Azure com aplicativos JavaScript, vá para: