Skapa en Python-app med Azure SDK för Python

Det här dokumentet visar exempel på hur du använder Azure SDK för Python för att komma åt dina data i Azure App Configuration.

Dricks

App Configuration erbjuder ett Python-providerbibliotek som bygger på Python 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 en ordlista och erbjuder andra funktioner som konfigurationssammansättning från flera etiketter, nyckelnamns trimning och automatisk upplösning av Key Vault-referenser. Gå till Python-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:Inställningar:Message Data från Azure App Configuration

Konfigurera Python-appen

  1. Skapa 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 pip install av kommandot .

    pip install azure-appconfiguration
    
  4. Skapa en ny fil med namnet app-configuration-example.py i katalogen app-configuration-example och lägg till följande kod:

    import os
    from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting
    
    try:
        print("Azure App Configuration - Python example")
        # Example code goes here
    except Exception as ex:
        print('Exception:')
        print(ex)
    

Kommentar

Kodfragmenten i det här exemplet hjälper dig att komma igång med App Configuration-klientbiblioteket för Python. För ditt program bör du även överväga att hantera undantag efter dina behov. Mer information om undantagshantering finns i vår Python 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 "connection-string-of-your-app-configuration-store"
    
  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 Python. Lägg till dessa kodfragment try i blocket i app-configuration-example.py fil 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 AzureAppConfigurationClient med hjälp av anslutningssträng som lagras i miljövariablerna.

    connection_string = os.getenv('AZURE_APPCONFIG_CONNECTION_STRING')
    app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)

Hämta en konfigurationsinställning

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

    retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
    print("\nRetrieved configuration setting:")
    print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)

Lägga till en konfigurationsinställning

Följande kodfragment skapar ett ConfigurationSetting objekt med key och value fält och anropar add_configuration_setting 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 set_configuration_setting användas i stället.

    config_setting = ConfigurationSetting(
        key='TestApp:Settings:NewSetting',
        value='New setting value'
    )
    added_config_setting = app_config_client.add_configuration_setting(config_setting)
    print("\nAdded configuration setting:")
    print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)

Hämta en lista över konfigurationsinställningar

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

    filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
    print("\nRetrieved list of configuration settings:")
    for item in filtered_settings_list:
        print("Key: " + item.key + ", Value: " + item.value)

Låsa en konfigurationsinställning

Låsstatusen för ett nyckelvärde i App Configuration anges av read_only objektets ConfigurationSetting attribut. Om read_only är Trueär är inställningen låst. Metoden set_read_only kan anropas med read_only=True argument för att låsa konfigurationsinställningen.

    locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
    print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))

Låsa upp en konfigurationsinställning

read_only Om attributet för ett ConfigurationSetting är Falselåss inställningen upp. Metoden set_read_only kan anropas med read_only=False argument för att låsa upp konfigurationsinställningen.

    unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
    print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))

Uppdatera en konfigurationsinställning

Metoden set_configuration_setting 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.

    added_config_setting.value = "Value has been updated!"
    updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
    print("\nUpdated configuration setting:")
    print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)

Ta bort en konfigurationsinställning

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


    deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
    print("\nDeleted configuration setting:")
    print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)

Kör appen

I det här exemplet har du skapat en Python-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 din app-configuration-example.py-fil ha följande kod:

import os
from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting

try:
    print("Azure App Configuration - Python example")
    # Example code goes here

    connection_string = os.getenv('AZURE_APPCONFIG_CONNECTION_STRING')
    app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)

    retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
    print("\nRetrieved configuration setting:")
    print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)

    config_setting = ConfigurationSetting(
        key='TestApp:Settings:NewSetting',
        value='New setting value'
    )
    added_config_setting = app_config_client.add_configuration_setting(config_setting)
    print("\nAdded configuration setting:")
    print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)

    filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
    print("\nRetrieved list of configuration settings:")
    for item in filtered_settings_list:
        print("Key: " + item.key + ", Value: " + item.value)

    locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
    print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))

    unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
    print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))

    added_config_setting.value = "Value has been updated!"
    updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
    print("\nUpdated configuration setting:")
    print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)

    deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
    print("\nDeleted configuration setting:")
    print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)

except Exception as ex:
    print('Exception:')
    print(ex)

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

python app-configuration-example.py

Du bör se följande utdata:

Azure App Configuration - Python 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 Python för att komma åt dina data i Azure App Configuration.

Ytterligare kodexempel finns i:

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