Share via


Een Python-app maken met de Azure SDK voor Python

In dit document ziet u voorbeelden van het gebruik van de Azure SDK voor Python voor toegang tot uw gegevens in Azure-app-configuratie.

Tip

App Configuration biedt een Python-providerbibliotheek die is gebouwd boven op de Python SDK en is ontworpen om gemakkelijker te gebruiken met uitgebreidere functies. Hiermee kunnen configuratie-instellingen worden gebruikt als een woordenlijst en worden andere functies zoals configuratiesamenstelling van meerdere labels, sleutelnaam bijsnijden en automatische resolutie van Key Vault-verwijzingen geboden. Ga naar de Python-quickstart voor meer informatie.

Vereisten

Een sleutelwaarde maken

Voeg de volgende sleutelwaarde toe aan het App Configuration-archief en laat label en inhoudstype ongewijzigd met de standaardwaarden. Ga naar Een sleutelwaarde maken voor meer informatie over het toevoegen van sleutelwaarden aan een archief met behulp van Azure Portal of de CLI.

Sleutel Weergegeven als
TestApp:Instellingen:Message Gegevens uit Azure-app-configuratie

De Python-app instellen

  1. Maak een nieuwe map voor het project met de naam app-configuration-example.

    mkdir app-configuration-example
    
  2. Schakel over naar de zojuist gemaakte map met app-configuratie .

    cd app-configuration-example
    
  3. Installeer de Azure App Configuration-clientbibliotheek met behulp van de opdracht pip install.

    pip install azure-appconfiguration
    
  4. Maak een nieuw bestand met de naam app-configuration-example.py in de map met app-configuratievoorbeelden en voeg de volgende code toe:

    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)
    

Notitie

De codefragmenten in dit voorbeeld helpen u aan de slag te gaan met de App Configuration-clientbibliotheek voor Python. Voor uw toepassing moet u ook rekening houden met het afhandelen van uitzonderingen op basis van uw behoeften. Raadpleeg de Python SDK documentation voor meer informatie over het afhandelen van uitzonderingen.

Uw App Configuration-verbindingsreeks configureren

  1. Stel een omgevingsvariabele in met de naam AZURE_APPCONFIG_CONNECTION_STRING en stel deze in op de verbindingsreeks van uw App Configuration-archief. Voer op de opdrachtregel de volgende opdracht uit:

    Als u de app lokaal wilt uitvoeren met behulp van de Windows-opdrachtprompt, voert u de volgende opdracht uit en vervangt u <app-configuration-store-connection-string> de verbindingsreeks van uw app-configuratiearchief:

    setx AZURE_APPCONFIG_CONNECTION_STRING "connection-string-of-your-app-configuration-store"
    
  2. Druk de waarde van de omgevingsvariabele af om te controleren of deze juist is ingesteld met de onderstaande opdracht.

    Start met behulp van de Windows-opdrachtprompt de opdrachtprompt opnieuw om de wijziging van kracht te laten worden en voer de volgende opdracht uit:

    echo %AZURE_APPCONFIG_CONNECTION_STRING%
    

Codevoorbeelden

De voorbeeldcodefragmenten in deze sectie laten zien hoe u veelgebruikte bewerkingen kunt uitvoeren met de App Configuration-clientbibliotheek voor Python. Voeg deze codefragmenten toe aan het try blok in app-configuration-example.py bestand dat u eerder hebt gemaakt.

Notitie

De App Configuration-clientbibliotheek verwijst naar een sleutel-waardeobject als ConfigurationSetting. Daarom worden in dit artikel de sleutel-waarden in het App Configuration-archief configuratie-instellingen genoemd.

Hieronder vindt u meer informatie over het volgende:

Verbinding maken met een App Configuration-archief

Met het volgende codefragment maakt u een instantie van AzureAppConfigurationClient met behulp van de in uw omgevingsvariabelen opgeslagen verbindingsreeks.

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

Een configuratie-instelling ophalen

Met het volgende codefragment wordt een configuratie-instelling opgehaald met de key-naam.

    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)

Een configuratie-instelling toevoegen

Met het volgende codefragment maakt u een ConfigurationSetting-object met de velden key en value en roept u de methode add_configuration_setting aan. Deze methode genereert een uitzondering als u probeert een configuratie-instelling toe te voegen die al in uw archief voorkomt. Als u deze uitzondering wilt voorkomen, kunt u in plaats daarvan de methode set_configuration_setting gebruiken.

    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)

Een lijst met configuratie-instellingen ophalen

Met het volgende codefragment wordt een lijst met configuratie-instellingen opgehaald. De argumenten key_filter en label_filter kunnen worden opgegeven om sleutel-waarden te filteren op basis van key respectievelijk label. Zie configuratie-instellingen opvragen voor meer informatie over filteren.

    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)

Een configuratie-instelling vergrendelen

De vergrendelingsstatus van een sleutel-waarde in App Configuration wordt aangeduid met het kenmerk read_only van het object ConfigurationSetting. Als read_onlyTrueis, is de instelling vergrendeld. De methode set_read_only kan worden aangeroepen met het argument read_only=True om de configuratie-instelling te vergrendelen.

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

Een configuratie-instelling ontgrendelen

Als het read_only-kenmerk van een ConfigurationSetting de waarde False heeft, is de instelling ontgrendeld. De methode set_read_only kan worden aangeroepen met het argument read_only=False om de configuratie-instelling te ontgrendelen.

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

Een configuratie-instelling bijwerken

De methode set_configuration_setting kan worden gebruikt om een bestaande instelling bij te werken of een nieuwe instelling te maken. Met het volgende codefragment wordt de waarde van een bestaande configuratie-instelling gewijzigd.

    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)

Een configuratie-instelling verwijderen

Met het volgende codefragment wordt een configuratie-instelling met de key-naam.


    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)

De app uitvoeren

In dit voorbeeld hebt u een Python-app gemaakt die gebruikmaakt van de Azure-app Configuration-clientbibliotheek om een configuratie-instelling op te halen die is gemaakt via Azure Portal, een nieuwe instelling toe te voegen, een lijst met bestaande instellingen op te halen, een instelling te vergrendelen en ontgrendelen, een instelling bij te werken en ten slotte een instelling te verwijderen.

Op dit moment moet uw app-configuration-example.py bestand de volgende code hebben:

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)

Navigeer in het consolevenster naar de map met het app-configuration-example.py-bestand en voer de volgende Python-opdracht uit om de app uit te voeren:

python app-configuration-example.py

U moet de volgende uitvoer zien:

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!

Resources opschonen

Als u de resources die in dit artikel zijn gemaakt niet wilt blijven gebruiken, verwijdert u de resourcegroep die u hier hebt gemaakt om kosten te voorkomen.

Belangrijk

Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. De resourcegroep en alle resources daarin worden permanent verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde resourcegroep of resources verwijdert. Als u de resources voor dit artikel in een resourcegroep hebt gemaakt die andere resources bevat die u wilt behouden, moet u elke resource afzonderlijk verwijderen uit het deelvenster in plaats van dat u de resourcegroep verwijdert.

  1. Meld u aan bij de Azure-portal en selecteer Resourcegroepen.
  2. Voer de naam van de resourcegroep in het vak Filteren op naam in.
  3. Selecteer in de resultatenlijst de resourcegroepnaam om een overzicht te bekijken.
  4. Selecteer Resourcegroep verwijderen.
  5. U wordt gevraagd om het verwijderen van de resourcegroep te bevestigen. Voer de naam van de resourcegroep in ter bevestiging en selecteer Verwijderen.

Na enkele ogenblikken worden de resourcegroep en alle bijbehorende resources verwijderd.

Volgende stappen

In deze handleiding hebt u gezien hoe u de Azure SDK voor Python gebruikt voor toegang tot uw gegevens in Azure-app Configuration.

Ga voor meer codevoorbeelden naar:

Voor meer informatie over het gebruik van Azure-app-configuratie met Python-apps, gaat u naar: