Creare un'app Node.js con Azure SDK per JavaScript
Questo documento illustra esempi di come usare Azure SDK per JavaScript per accedere ai valori chiave in app Azure Configuration.
Suggerimento
Configurazione app offre una libreria di provider JavaScript basata su JavaScript SDK ed è progettata per essere più semplice da usare con funzionalità più avanzate. Consente di usare le impostazioni di configurazione come un oggetto Map e offre altre funzionalità, ad esempio la composizione della configurazione da più etichette, il taglio del nome della chiave e la risoluzione automatica dei riferimenti a Key Vault. Per altre informazioni, vedere la guida introduttiva a JavaScript.
Prerequisiti
- Un account Azure con una sottoscrizione attiva - Crearne uno gratuitamente
- Archivio Configurazione app. Creare un archivio.
- Versioni LTS di Node.js. Per informazioni sull'installazione di Node.js direttamente in Windows o sull'uso del sottosistema Windows per Linux (WSL), vedere Introduzione a Node.js
Creare un valore chiave
Aggiungere il valore chiave seguente all'archivio Configurazione app e lasciare Etichetta e Tipo di contenuto con i valori predefiniti. Per altre informazioni su come aggiungere valori chiave a un archivio usando il portale di Azure o l'interfaccia della riga di comando, vedere Creare un valore chiave.
Chiave | valore |
---|---|
TestApp:Settings:Message | Dati di Configurazione app di Azure |
Configurazione dell'app Node.js
In questa esercitazione si creerà una nuova directory per il progetto denominato app-configuration-example.
mkdir app-configuration-example
Passare alla directory app-configuration-example appena creata.
cd app-configuration-example
Installare la libreria client di Configurazione app di Azure usando il comando
npm install
.npm install @azure/app-configuration
Creare un nuovo file denominato app-configuration-example.js nella directory app-configuration-example e aggiungere il codice seguente:
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
I frammenti di codice in questo esempio consentono di iniziare a usare la libreria client Configurazione app per JavaScript. Per l'applicazione, è consigliabile gestire le eccezioni in base alle esigenze. Per altre informazioni sulla gestione delle eccezioni, vedere la documentazione di JavaScript SDK.
Configurare la stringa di connessione di Configurazione app
Impostare una variabile di ambiente denominata AZURE_APPCONFIG_CONNECTION_STRING e impostarla sul stringa di connessione dell'archivio Configurazione app. Eseguire il comando seguente alla riga di comando:
Per eseguire l'app in locale usando il prompt dei comandi di Windows, eseguire il comando seguente e sostituire
<app-configuration-store-connection-string>
con il stringa di connessione dell'archivio di configurazione app:setx AZURE_APPCONFIG_CONNECTION_STRING "<app-configuration-store-connection-string>"
Stampare il valore della variabile di ambiente per verificare che sia impostato correttamente con il comando seguente.
Usando il prompt dei comandi di Windows, riavviare il prompt dei comandi per consentire l'applicazione della modifica ed eseguire il comando seguente:
echo %AZURE_APPCONFIG_CONNECTION_STRING%
Esempi di codice
I frammenti di codice di esempio in questa sezione illustrano come eseguire operazioni comuni con la libreria client Configurazione app per JavaScript. Aggiungere questi frammenti di codice al corpo della run
funzione nel file app-configuration-example.js creato in precedenza.
Nota
La libreria client di Configurazione app fa riferimento a un oggetto chiave-valore come ConfigurationSetting
. Pertanto, in questo articolo, gli oggetti chiave-valore nell'archivio di Configurazione app verranno definiti come impostazioni di configurazione.
Di seguito viene descritto come:
- Connessione a un archivio Configurazione app
- Ottenere un'impostazione di configurazione
- Aggiungere un'impostazione di configurazione
- Ottenere un elenco di impostazioni di configurazione
- Bloccare un'impostazione di configurazione
- Sbloccare un'impostazione di configurazione
- Aggiornare un'impostazione di configurazione
- Eliminare un'impostazione di configurazione
Connettersi a un archivio di Configurazione app
Il frammento di codice seguente crea un'istanza di AppConfigurationClient usando il stringa di connessione archiviato nelle variabili di ambiente.
const connection_string = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
const client = new AppConfigurationClient(connection_string);
Ottenere un'impostazione di configurazione
Il frammento di codice seguente recupera un'impostazione di configurazione in base al nome key
.
const retrievedConfigSetting = await client.getConfigurationSetting({
key: "TestApp:Settings:Message"
});
console.log("\nRetrieved configuration setting:");
console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);
Aggiungere un'impostazione di configurazione
Il frammento di codice seguente crea un oggetto ConfigurationSetting
con i campi key
e value
e richiama il metodo addConfigurationSetting
.
Questo metodo genererà un'eccezione se si prova ad aggiungere un'impostazione di configurazione già esistente nell'archivio. Se si vuole evitare questa eccezione, è possibile usare il metodo setConfigurationSetting .
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}`);
Ottenere un elenco di impostazioni di configurazione
Il frammento di codice seguente recupera un elenco di impostazioni di configurazione. Gli argomenti keyFilter
e labelFilter
possono essere specificati per filtrare rispettivamente gli oggetti chiave-valore basati su key
e label
. Per altre informazioni sui filtri, vedere come eseguire query sulle impostazioni di configurazione.
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}`);
}
Bloccare un'impostazione di configurazione
Lo stato di blocco di un oggetto chiave-valore in Configurazione app è indicato dall'attributo readOnly
dell'oggetto ConfigurationSetting
. Se readOnly
è true
, l'impostazione è bloccata. Il setReadOnly
metodo può essere richiamato con true
come secondo argomento per bloccare l'impostazione di configurazione.
const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
console.log(`\nRead-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);
Sbloccare un'impostazione di configurazione
Se l'attributo readOnly
di ConfigurationSetting
è false
, l'impostazione è sbloccata. Il setReadOnly
metodo può essere richiamato con false
come secondo argomento per sbloccare l'impostazione di configurazione.
const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
console.log(`\nRead-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);
Aggiornare un'impostazione di configurazione
È possibile usare il metodo setConfigurationSetting
per aggiornare un'impostazione esistente o crearne una nuova. Il frammento di codice seguente cambia il valore di un'impostazione di configurazione esistente.
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}`);
Eliminare un'impostazione di configurazione
Il frammento di codice seguente elimina un'impostazione di configurazione in base al nome key
.
const deletedConfigSetting = await client.deleteConfigurationSetting({
key: "TestApp:Settings:NewSetting"
});
console.log("\nDeleted configuration setting:");
console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);
Eseguire l'app
In questo esempio è stata creata un'app Node.js che usa la libreria client di configurazione app Azure per recuperare un'impostazione di configurazione creata tramite il portale di Azure, aggiungere una nuova impostazione, recuperare un elenco di impostazioni esistenti, bloccare e sbloccare un'impostazione, aggiornare un'impostazione e infine eliminare un'impostazione.
A questo punto, il file app-configuration-example.js deve avere il codice seguente:
const { AppConfigurationClient } = require("@azure/app-configuration");
async function run() {
console.log("Azure App Configuration - JavaScript example");
const connection_string = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
const client = new AppConfigurationClient(connection_string);
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);
Nella finestra della console passare alla directory contenente il file app-configuration-example.js ed eseguire il comando seguente per eseguire l'app:
node app.js
Verrà visualizzato l'output seguente:
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!
Pulire le risorse
Se non si vuole continuare a usare le risorse create in questo articolo, eliminare il gruppo di risorse creato qui per evitare addebiti.
Importante
L'eliminazione di un gruppo di risorse è irreversibile. Il gruppo di risorse e tutte le risorse in esso contenute vengono eliminati in modo permanente. Assicurarsi di non eliminare accidentalmente il gruppo di risorse o le risorse sbagliate. Se le risorse per questo articolo sono state create in un gruppo di risorse che contiene altre risorse che si vogliono mantenere, eliminare ogni risorsa singolarmente dal rispettivo riquadro anziché eliminare il gruppo di risorse.
- Accedere al portale di Azure e selezionare Gruppi di risorse.
- Nella casella Filtra per nome immettere il nome del gruppo di risorse.
- Nell'elenco dei risultati selezionare il nome del gruppo di risorse per visualizzare una panoramica.
- Selezionare Elimina gruppo di risorse.
- Verrà chiesto di confermare l'eliminazione del gruppo di risorse. Immettere il nome del gruppo di risorse per confermare e selezionare Elimina.
Dopo qualche istante, il gruppo di risorse e tutte le risorse che contiene vengono eliminati.
Passaggi successivi
Questa guida ha illustrato come usare Azure SDK per JavaScript per accedere ai valori chiave in app Azure Configuration.
Per altri esempi di codice, vedere:
Per informazioni su come usare app Azure Configurazione con le app JavaScript, vedere: