Tworzenie aplikacji w języku Python przy użyciu zestawu Azure SDK dla języka Python

W tym dokumencie przedstawiono przykłady użycia zestawu Azure SDK dla języka Python w celu uzyskania dostępu do danych w usłudze aplikacja systemu Azure Configuration.

Napiwek

Usługa App Configuration oferuje bibliotekę dostawcy języka Python, która jest oparta na zestawie SDK języka Python i została zaprojektowana tak, aby ułatwić korzystanie z bogatszych funkcji. Umożliwia ona używanie ustawień konfiguracji, takich jak słownik, i oferuje inne funkcje, takie jak kompozycja konfiguracji z wielu etykiet, przycinanie nazw kluczy i automatyczne rozpoznawanie odwołań usługi Key Vault. Przejdź do przewodnika Szybki start dla języka Python, aby dowiedzieć się więcej.

Wymagania wstępne

Tworzenie wartości klucz-wartość

Dodaj następującą wartość klucza do magazynu App Configuration i pozostaw wartości domyślne Etykieta i Typ zawartości. Aby uzyskać więcej informacji na temat dodawania wartości klucz-wartości do magazynu przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia, przejdź do artykułu Create a key-value (Tworzenie wartości klucza).

Key Wartość
TestApp:Ustawienia:Message Dane z konfiguracji aplikacja systemu Azure

Konfigurowanie aplikacji w języku Python

  1. Utwórz nowy katalog dla projektu o nazwie app-configuration-example.

    mkdir app-configuration-example
    
  2. Przejdź do nowo utworzonego katalogu app-configuration-example .

    cd app-configuration-example
    
  3. Zainstaluj bibliotekę klienta aplikacja systemu Azure Configuration przy użyciu pip install polecenia .

    pip install azure-appconfiguration
    
  4. Utwórz nowy plik o nazwie app-configuration-example.py w katalogu app-configuration-example i dodaj następujący 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)
    

Uwaga

Fragmenty kodu w tym przykładzie ułatwią rozpoczęcie pracy z biblioteką klienta usługi App Configuration dla języka Python. W przypadku aplikacji należy również rozważyć obsługę wyjątków zgodnie z potrzebami. Aby dowiedzieć się więcej na temat obsługi wyjątków, zapoznaj się z naszą dokumentacją zestawu SDK języka Python.

Konfigurowanie parametry połączenia usługi App Configuration

  1. Ustaw zmienną środowiskową o nazwie AZURE_APPCONFIG_CONNECTION_STRING i ustaw ją na parametry połączenia magazynu App Configuration. W wierszu polecenia uruchom następujące polecenie:

    Aby uruchomić aplikację lokalnie przy użyciu wiersza polecenia systemu Windows, uruchom następujące polecenie i zastąp <app-configuration-store-connection-string> parametry połączenia magazynu konfiguracji aplikacji:

    setx AZURE_APPCONFIG_CONNECTION_STRING "connection-string-of-your-app-configuration-store"
    
  2. Wyświetl wartość zmiennej środowiskowej, aby sprawdzić, czy jest ona poprawnie ustawiona za pomocą poniższego polecenia.

    Korzystając z wiersza polecenia systemu Windows, uruchom ponownie wiersz polecenia, aby zezwolić na wprowadzenie zmiany i uruchomić następujące polecenie:

    echo %AZURE_APPCONFIG_CONNECTION_STRING%
    

Przykłady kodu

W przykładowych fragmentach kodu w tej sekcji pokazano, jak wykonywać typowe operacje za pomocą biblioteki klienta usługi App Configuration dla języka Python. Dodaj te fragmenty kodu do try bloku w utworzonym wcześniej pliku app-configuration-example.py .

Uwaga

Biblioteka klienta usługi App Configuration odwołuje się do obiektu klucz-wartość jako ConfigurationSetting. W związku z tym w tym artykule wartości klucza w magazynie App Configuration będą określane jako ustawienia konfiguracji.

Dowiedz się poniżej, jak:

Połączenie do magazynu usługi App Configuration

Poniższy fragment kodu tworzy wystąpienie klasy AzureAppConfigurationClient przy użyciu parametry połączenia przechowywanych w zmiennych środowiskowych.

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

Pobieranie ustawienia konfiguracji

Poniższy fragment kodu pobiera ustawienie konfiguracji według key nazwy.

    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)

Dodawanie ustawienia konfiguracji

Poniższy fragment kodu tworzy ConfigurationSetting obiekt z polami key i value i wywołuje metodę add_configuration_setting . Ta metoda zgłosi wyjątek, jeśli spróbujesz dodać ustawienie konfiguracji, które już istnieje w twoim sklepie. Jeśli chcesz uniknąć tego wyjątku, zamiast tego można użyć metody set_configuration_setting .

    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)

Pobieranie listy ustawień konfiguracji

Poniższy fragment kodu pobiera listę ustawień konfiguracji. Argumenty key_filter i label_filter można podać, aby filtrować wartości klucz-wartości odpowiednio na key podstawie i label . Aby uzyskać więcej informacji na temat filtrowania, zobacz jak wykonywać zapytania dotyczące ustawień konfiguracji.

    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)

Blokowanie ustawienia konfiguracji

Stan blokady klucz-wartość w usłudze App Configuration jest oznaczany przez read_only atrybut ConfigurationSetting obiektu. Jeśli read_only wartość to True, ustawienie jest zablokowane. Metodę set_read_only można wywołać za pomocą read_only=True argumentu, aby zablokować ustawienie konfiguracji.

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

Odblokowywanie ustawienia konfiguracji

Jeśli atrybut elementu read_onlyConfigurationSetting to False, ustawienie jest odblokowane. Metodę set_read_only można wywołać z argumentem read_only=False w celu odblokowania ustawienia konfiguracji.

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

Aktualizowanie ustawienia konfiguracji

Metody set_configuration_setting można użyć do zaktualizowania istniejącego ustawienia lub utworzenia nowego ustawienia. Poniższy fragment kodu zmienia wartość istniejącego ustawienia konfiguracji.

    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)

Usuwanie ustawienia konfiguracji

Poniższy fragment kodu usuwa ustawienie konfiguracji według key nazwy.


    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)

Uruchom aplikację

W tym przykładzie utworzono aplikację w języku Python, która używa biblioteki klienta aplikacja systemu Azure Configuration do pobierania ustawienia konfiguracji utworzonego za pośrednictwem witryny Azure Portal, dodawania nowego ustawienia, pobierania listy istniejących ustawień, blokowania i odblokowywania ustawienia, aktualizowania ustawienia i usuwania ustawienia.

Na tym etapie plik app-configuration-example.py powinien mieć następujący 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)

W oknie konsoli przejdź do katalogu zawierającego plik app-configuration-example.py i wykonaj następujące polecenie języka Python, aby uruchomić aplikację:

python app-configuration-example.py

Powinny zostać wyświetlone następujące dane wyjściowe:

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!

Czyszczenie zasobów

Jeśli nie chcesz nadal korzystać z zasobów utworzonych w tym artykule, usuń utworzoną tutaj grupę zasobów, aby uniknąć naliczania opłat.

Ważne

Usunięcie grupy zasobów jest nieodwracalne. Grupa zasobów i wszystkie zasoby w niej są trwale usuwane. Upewnij się, że nie usuniesz przypadkowo nieprawidłowej grupy zasobów ani zasobów. Jeśli zasoby dla tego artykułu zostały utworzone w grupie zasobów zawierającej inne zasoby, które chcesz zachować, usuń każdy zasób oddzielnie z odpowiedniego okienka zamiast usuwać grupę zasobów.

  1. Zaloguj się do witryny Azure Portal i wybierz pozycję Grupy zasobów.
  2. W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
  3. Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
  4. Wybierz pozycję Usuń grupę zasobów.
  5. Zobaczysz prośbę o potwierdzenie usunięcia grupy zasobów. Wprowadź nazwę grupy zasobów, aby potwierdzić, a następnie wybierz pozycję Usuń.

Po kilku chwilach grupa zasobów i wszystkie jej zasoby zostaną usunięte.

Następne kroki

W tym przewodniku pokazano, jak używać zestawu Azure SDK dla języka Python do uzyskiwania dostępu do danych w usłudze aplikacja systemu Azure Configuration.

Aby uzyskać dodatkowe przykłady kodu, odwiedź stronę:

Aby dowiedzieć się, jak używać usługi aplikacja systemu Azure Configuration z aplikacjami języka Python, przejdź do: