Skapa en Node.js-app med Azure SDK för JavaScript

Det här dokumentet visar exempel på hur du använder Azure SDK för JavaScript för att få åtkomst till nyckelvärden i Azure App Configuration.

Dricks

App Configuration erbjuder ett JavaScript-providerbibliotek som bygger på JavaScript SDK och är utformat för att vara enklare att använda med rikare funktioner. Det gör att konfigurationsinställningar kan användas som ett map-objekt och erbjuder andra funktioner som konfigurationssammansättning från flera etiketter, nyckelnamnstrimning och automatisk upplösning av Key Vault-referenser. Gå till JavaScript-snabbstarten om du vill veta mer.

Förutsättningar

Skapa ett nyckelvärde

Lägg till följande nyckelvärde i appkonfigurationsarkivet och lämna Etikett och innehållstyp med sina standardvärden. Mer information om hur du lägger till nyckelvärden i ett arkiv med hjälp av Azure-portalen eller CLI finns i Skapa ett nyckelvärde.

Tangent Värde
TestApp:Settings:Message Data från Azure App Configuration

Konfigurera Node.js-appen

  1. I den här självstudien skapar du en ny katalog för projektet med namnet app-configuration-example.

    mkdir app-configuration-example
    
  2. Växla till den nyligen skapade katalogen app-configuration-example .

    cd app-configuration-example
    
  3. Installera Azure App Configuration-klientbiblioteket med hjälp npm install av kommandot .

    npm install @azure/app-configuration
    
  4. Skapa en ny fil med namnet app-configuration-example.js i katalogen app-configuration-example och lägg till följande kod:

    const { AppConfigurationClient } = require("@azure/app-configuration");
    
    async function run() {
      console.log("Azure App Configuration - JavaScript example");
      // Example code goes here
    }
    
    run().catch(console.error);
    

Kommentar

Kodfragmenten i det här exemplet hjälper dig att komma igång med App Configuration-klientbiblioteket för JavaScript. För ditt program bör du även överväga att hantera undantag efter dina behov. Mer information om undantagshantering finns i vår JavaScript SDK-dokumentation.

Konfigurera din appkonfiguration anslutningssträng

  1. Ange en miljövariabel med namnet AZURE_APPCONFIG_CONNECTION_STRING och ange den till anslutningssträng i appkonfigurationsarkivet. Kör följande kommando på kommandoraden:

    Kör följande kommando för att köra appen lokalt med hjälp av Windows-kommandotolken och ersätt <app-configuration-store-connection-string> med anslutningssträng i appkonfigurationsarkivet:

    setx AZURE_APPCONFIG_CONNECTION_STRING "<app-configuration-store-connection-string>"
    
  2. Skriv ut värdet för miljövariabeln för att verifiera att den har angetts korrekt med kommandot nedan.

    Starta om kommandotolken med hjälp av Windows-kommandotolken så att ändringen börjar gälla och kör följande kommando:

    echo %AZURE_APPCONFIG_CONNECTION_STRING%
    

Kodexempel

Exempelkodfragmenten i det här avsnittet visar hur du utför vanliga åtgärder med App Configuration-klientbiblioteket för JavaScript. Lägg till dessa kodfragment i funktionens run brödtext i filen app-configuration-example.js som du skapade tidigare.

Kommentar

Programkonfigurationsklientbiblioteket refererar till ett nyckelvärdesobjekt som ConfigurationSetting. I den här artikeln kallas därför nyckelvärdena i App Configuration Store för konfigurationsinställningar.

Lär dig nedan hur du:

Anslut till ett appkonfigurationsarkiv

Följande kodfragment skapar en instans av AppConfigurationClient med hjälp av anslutningssträng som lagras i miljövariablerna.

const connection_string = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
const client = new AppConfigurationClient(connection_string);

Hämta en konfigurationsinställning

Följande kodfragment hämtar en konfigurationsinställning key efter namn.

    const retrievedConfigSetting = await client.getConfigurationSetting({
        key: "TestApp:Settings:Message"
    });
    console.log("\nRetrieved configuration setting:");
    console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);

Lägga till en konfigurationsinställning

Följande kodfragment skapar ett ConfigurationSetting objekt med key och value fält och anropar addConfigurationSetting metoden. Den här metoden utlöser ett undantag om du försöker lägga till en konfigurationsinställning som redan finns i ditt arkiv. Om du vill undvika det här undantaget kan metoden setConfigurationSetting användas i stället.

    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}`);

Hämta en lista över konfigurationsinställningar

Följande kodfragment hämtar en lista med konfigurationsinställningar. Argumenten keyFilter och labelFilter kan anges för att filtrera nyckelvärden baserat på keylabel respektive. Mer information om filtrering finns i fråga om konfigurationsinställningar.

    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}`);
    }

Låsa en konfigurationsinställning

Låsstatusen för ett nyckelvärde i App Configuration anges av readOnly objektets ConfigurationSetting attribut. Om readOnly är trueär är inställningen låst. Metoden setReadOnly kan anropas med true som det andra argumentet för att låsa konfigurationsinställningen.

    const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
    console.log(`\nRead-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);

Låsa upp en konfigurationsinställning

readOnly Om attributet för ett ConfigurationSetting är falselåss inställningen upp. Metoden setReadOnly kan anropas med false som det andra argumentet för att låsa upp konfigurationsinställningen.

    const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
    console.log(`\nRead-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);

Uppdatera en konfigurationsinställning

Metoden setConfigurationSetting kan användas för att uppdatera en befintlig inställning eller skapa en ny inställning. Följande kodfragment ändrar värdet för en befintlig konfigurationsinställning.

    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}`);

Ta bort en konfigurationsinställning

Följande kodfragment tar bort en konfigurationsinställning efter key namn.

    const deletedConfigSetting = await client.deleteConfigurationSetting({
        key: "TestApp:Settings:NewSetting"
    });
    console.log("\nDeleted configuration setting:");
    console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);

Kör appen

I det här exemplet har du skapat en Node.js-app som använder Azure App Configuration-klientbiblioteket för att hämta en konfigurationsinställning som skapats via Azure-portalen, lägga till en ny inställning, hämta en lista över befintliga inställningar, låsa och låsa upp en inställning, uppdatera en inställning och slutligen ta bort en inställning.

Nu bör filen app-configuration-example.js ha följande kod:

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);

I konsolfönstret navigerar du till katalogen som innehåller filen app-configuration-example.js och kör följande kommando för att köra appen:

node app.js

Du bör se följande utdata:

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!

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.

  1. Logga in på Azure-portalen och välj Resursgrupper.
  2. I rutan Filtrera efter namn anger du namnet på resursgruppen.
  3. I resultatlistan väljer du resursgruppens namn för att se en översikt.
  4. Välj Ta bort resursgrupp.
  5. 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

Den här guiden visade hur du använder Azure SDK för JavaScript för att få åtkomst till nyckelvärden i Azure App Configuration.

Ytterligare kodexempel finns i:

Om du vill lära dig hur du använder Azure App Configuration med JavaScript-appar går du till: