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.
I den här snabbstarten använder du Azure App Configuration för att centralisera lagring och hantering av programinställningar med hjälp av Azure App Configuration JavaScript-providerklientbiblioteket.
Appkonfigurationsprovidern för JavaScript bygger på Azure SDK för JavaScript och är utformad för att vara enklare att använda med rikare funktioner.
Det ger åtkomst till nyckelvärden i App Configuration som ett Map objekt.
Det erbjuder funktioner som konfigurationssammansättning från flera etiketter, trimning av nyckelprefix, automatisk upplösning av Key Vault-referenser och mycket mer.
Som ett exempel visar den här handledningen hur du använder JavaScript-leverantören i en Node.js-app.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa en kostnadsfritt.
- En App Configuration-butik, som visas i guiden för att skapa en App Configuration-butik.
- LTS-versioner av Node.js. Information om hur du installerar Node.js antingen direkt i Windows eller med hjälp av Windows-undersystem för Linux (WSL) finns i Kom igång med Node.js
Lägga till nyckelvärden
Lägg till följande nyckelvärden i App Configuration Store. För mer information om hur du lägger till nyckelvärden i ett lager med hjälp av Azure portal eller CLI, gå till Skapa ett nyckelvärde.
| Nyckel | Värde | Innehållstyp | 
|---|---|---|
| meddelande | Meddelande från Azure App Configuration | Lämna tom | 
| app.greeting | Hej världen | Lämna tom | 
| app.json | {"myKey":"myValue"} | application/json | 
Skapa en Node.js-konsolapp
I den här handledningen skapar du en Node.js-konsolapp och läser in data från din App Configuration-lagring.
- Skapa en ny katalog för projektet med namnet app-configuration-quickstart. - mkdir app-configuration-quickstart
- Växla till den nyligen skapade katalogen app-configuration-quickstart. - cd app-configuration-quickstart
- Installera Azure App Configuration-providern med hjälp - npm installav kommandot .- npm install @azure/app-configuration-provider
Anslut till en App Configuration Store
Följande exempel visar hur du hämtar konfigurationsdata från Azure App Configuration och använder dem i ditt program.
Som standard läses nyckelvärdena in som ett Map objekt, så att du kan komma åt varje nyckelvärde med dess fullständiga nyckelnamn.
Men om ditt program använder konfigurationsobjekt kan du använda hjälp-API:et constructConfigurationObject som skapar ett konfigurationsobjekt baserat på nyckelvärdena som läses in från Azure App Configuration.
Skapa en fil med namnet app.js i katalogen app-configuration-quickstart och kopiera koden från varje exempel.
Exempel 1: Läs in nyckelvärden med standardväljare
I det här exemplet ansluter du till Azure App Configuration och läser in nyckelvärden utan att ange avancerade alternativ. Som standard läses alla nyckelvärden in utan etikett. Du kan ansluta till din App Configuration-butik med Entra-ID från Microsoft (rekommenderas) eller en anslutningssträng.
Du använder DefaultAzureCredential för att autentisera dig till din App Configuration-lagringsplats. Följ anvisningarna  för att tilldela dina autentiseringsuppgifter rollen App Configuration Data Reader. Se till att ge tillräckligt med tid för att behörigheten ska spridas innan du kör programmet.
const { load } = require("@azure/app-configuration-provider");
const { DefaultAzureCredential } = require("@azure/identity");
const endpoint = process.env.AZURE_APPCONFIG_ENDPOINT;
const credential = new DefaultAzureCredential(); // For more information, see https://free.blessedness.top/azure/developer/javascript/sdk/credential-chains#use-defaultazurecredential-for-flexibility
async function run() {
    console.log("Sample 1: Load key-values with default selector");
    // Connect to Azure App Configuration using a token credential and load all key-values with null label.
    const settings = await load(endpoint, credential);
    console.log("---Consume configuration as a Map---");
    // Find the key "message" and print its value.
    console.log('settings.get("message"):', settings.get("message"));           // settings.get("message"): Message from Azure App Configuration
    // Find the key "app.greeting" and print its value.
    console.log('settings.get("app.greeting"):', settings.get("app.greeting")); // settings.get("app.greeting"): Hello World
    // Find the key "app.json" whose value is an object.
    console.log('settings.get("app.json"):', settings.get("app.json"));         // settings.get("app.json"): { myKey: 'myValue' }
    console.log("---Consume configuration as an object---");
    // Construct configuration object from loaded key-values, by default "." is used to separate hierarchical keys.
    const config = settings.constructConfigurationObject();
    // Use dot-notation to access configuration
    console.log("config.message:", config.message);             // config.message: Message from Azure App Configuration
    console.log("config.app.greeting:", config.app.greeting);   // config.app.greeting: Hello World
    console.log("config.app.json:", config.app.json);           // config.app.json: { myKey: 'myValue' }
}
run().catch(console.error);
Exempel 2: Läs in specifika nyckelvärden med hjälp av väljare
I det här exemplet läser du in en delmängd nyckelvärden genom att ange alternativet selectors .
Endast nycklar som börjar med "app" läses in.
Observera att du kan ange flera väljare baserat på dina behov, var och en med keyFilter och labelFilter egenskaper.
const { load } = require("@azure/app-configuration-provider");
const { DefaultAzureCredential } = require("@azure/identity");
const endpoint = process.env.AZURE_APPCONFIG_ENDPOINT;
const credential = new DefaultAzureCredential(); // For more information, see https://free.blessedness.top/azure/developer/javascript/sdk/credential-chains#use-defaultazurecredential-for-flexibility
async function run() {
    console.log("Sample 2: Load specific key-values using selectors");
    // Load a subset of keys starting with "app." prefix.
    const settings = await load(endpoint, credential, {
        selectors: [{
            keyFilter: "app.*"
        }],
    });
    console.log("---Consume configuration as a Map---");
    // The key "message" is not loaded as it does not start with "app."
    console.log('settings.has("message"):', settings.has("message"));           // settings.has("message"): false
    // The key "app.greeting" is loaded
    console.log('settings.has("app.greeting"):', settings.has("app.greeting")); // settings.has("app.greeting"): true
    // The key "app.json" is loaded
    console.log('settings.has("app.json"):', settings.has("app.json"));         // settings.has("app.json"): true
    console.log("---Consume configuration as an object---");
    // Construct configuration object from loaded key-values
    const config = settings.constructConfigurationObject({ separator: "." });
    // Use dot-notation to access configuration
    console.log("config.message:", config.message);         // config.message: undefined
    console.log("config.app.greeting:", config.app.greeting);   // config.app.greeting: Hello World
    console.log("config.app.json:", config.app.json);           // config.app.json: { myKey: 'myValue' }
}
run().catch(console.error);
Exempel 3: Ladda in nyckelvärden och trimma prefix från nycklar
I det här exemplet läser du in nyckelvärden med alternativet trimKeyPrefixes.
När nyckelvärden har lästs in trimmas prefixet "app" från alla nycklar.
Detta är användbart när du vill läsa in konfigurationer som är specifika för ditt program genom att filtrera till ett visst nyckelprefix, men du inte vill att koden ska bära prefixet varje gång den kommer åt konfigurationen.
const { load } = require("@azure/app-configuration-provider");
const { DefaultAzureCredential } = require("@azure/identity");
const endpoint = process.env.AZURE_APPCONFIG_ENDPOINT;
const credential = new DefaultAzureCredential(); // For more information, see https://free.blessedness.top/azure/developer/javascript/sdk/credential-chains#use-defaultazurecredential-for-flexibility
async function run() {
    console.log("Sample 3: Load key-values and trim prefix from keys");
    // Load all key-values with no label, and trim "app." prefix from all keys.
    const settings = await load(endpoint, credential, {
        selectors: [{
            keyFilter: "app.*"
        }],
        trimKeyPrefixes: ["app."]
    });
    console.log("---Consume configuration as a Map---");
    // The original key "app.greeting" is trimmed as "greeting".
    console.log('settings.get("greeting"):', settings.get("greeting")); // settings.get("greeting"): Hello World
    // The original key "app.json" is trimmed as "json".
    console.log('settings.get("json"):', settings.get("json"));         // settings.get("json"): { myKey: 'myValue' }
    console.log("---Consume configuration as an object---");
    // Construct configuration object from loaded key-values with trimmed keys.
    const config = settings.constructConfigurationObject();
    // Use dot-notation to access configuration
    console.log("config.greeting:", config.greeting);   // config.greeting: Hello World
    console.log("config.json:", config.json);           // config.json: { myKey: 'myValue' }
}
run()
Kör programmet
- Ange miljövariabeln . - Ställ in miljövariabeln med namnet AZURE_APPCONFIG_ENDPOINT till slutpunkten för din Appkonfigurationsbutik som finns under Översikt i Azure Portal. - Om du använder Windows-kommandotolken kör du följande kommando och startar om kommandotolken så att ändringen börjar gälla: - setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"- Om du använder PowerShell kör du följande kommando: - $Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"- Om du använder macOS eller Linux kör du följande kommando: - export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
- När miljövariabeln har angetts korrekt kör du följande kommando för att köra appen lokalt: - node app.js- Du bör se följande utdata för varje exempel: - Exempel 1 - Sample 1: Load key-values with default selector ---Consume configuration as a Map--- settings.get("message"): Message from Azure App Configuration settings.get("app.greeting"): Hello World settings.get("app.json"): { myKey: 'myValue' } ---Consume configuration as an object--- config.message: Message from Azure App Configuration config.app.greeting: Hello World config.app.json: { myKey: 'myValue' }- Exempel 2 - Sample 2: Load specific key-values using selectors ---Consume configuration as a Map--- settings.has("message"): false settings.has("app.greeting"): true settings.has("app.json"): true ---Consume configuration as an object--- config.message: undefined config.app.greeting: Hello World config.app.json: { myKey: 'myValue' }- Exempel 3 - Sample 3: Load key-values and trim prefix from keys ---Consume configuration as a Map--- settings.get("greeting"): Hello World settings.get("json"): { myKey: 'myValue' } ---Consume configuration as an object--- config.greeting: Hello World config.json: { myKey: 'myValue' }
Rensa resurser
Om du inte vill fortsätta använda resurserna som skapas i den här artikeln tar du bort resursgruppen som du skapade här för att undvika avgifter.
Viktigt!
Att ta bort en resursgrupp kan inte ångras. Resursgruppen och alla resurser i den tas bort permanent. Se till att du inte oavsiktligt tar bort fel resursgrupp eller resurser. Om du har skapat resurserna för den här artikeln i en resursgrupp som innehåller andra resurser som du vill behålla tar du bort varje resurs individuellt från respektive fönster i stället för att ta bort resursgruppen.
- Logga in på Azure Portal och välj Resursgrupper.
- I rutan Filtrera efter namn anger du namnet på resursgruppen.
- I resultatlistan väljer du resursgruppens namn för att se en översikt.
- Välj Ta bort resursgrupp.
- Du blir ombedd att bekräfta borttagningen av resursgruppen. Ange namnet på resursgruppen för att bekräfta och välj Ta bort.
Efter en liten stund tas resursgruppen och alla dess resurser bort.
Nästa steg
I den här snabbstarten skapade du ett nytt App Configuration Store och lärde dig att komma åt nyckelvärden med hjälp av App Configuration JavaScript-providern i en Node.js-app. Om du vill lära dig hur du konfigurerar din app för att dynamiskt uppdatera konfigurationsinställningarna fortsätter du till nästa självstudie.
För en fullständig funktionsöversikt av JavaScript-konfigurationsproviderbiblioteket, gå vidare till följande dokument.