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
- Azure-prenumeration – skapa en kostnadsfritt
- Python 3.8 eller senare – information om hur du konfigurerar Python i Windows finns i dokumentationen om Python i Windows
- Ett appkonfigurationsarkiv. Skapa en butik.
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
Skapa en ny katalog för projektet med namnet app-configuration-example.
mkdir app-configuration-example
Växla till den nyligen skapade katalogen app-configuration-example .
cd app-configuration-example
Installera Azure App Configuration-klientbiblioteket med hjälp
pip install
av kommandot .pip install azure-appconfiguration
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
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"
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
- Hämta en konfigurationsinställning
- Lägga till en konfigurationsinställning
- Hämta en lista över konfigurationsinställningar
- Låsa en konfigurationsinställning
- Låsa upp en konfigurationsinställning
- Uppdatera en konfigurationsinställning
- Ta bort en konfigurationsinställning
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å key
label
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 False
lå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.
- Logga in på Azure-portalen 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
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: