إنشاء تطبيق Python باستخدام Azure SDK ل Python

يوضح هذا المستند أمثلة حول كيفية استخدام Azure SDK ل Python للوصول إلى بياناتك في Azure App Configuration.

تلميح

يوفر App Configuration مكتبة موفر Python مبنية فوق Python SDK ومصممة لتكون أسهل في الاستخدام مع ميزات أكثر ثراء. فهو يتيح استخدام إعدادات التكوين مثل القاموس، ويوفر ميزات أخرى مثل تكوين التكوين من تسميات متعددة، وقص اسم المفتاح، والدقة التلقائية لمراجع Key Vault. انتقل إلى التشغيل السريع ل Python لمعرفة المزيد.

المتطلبات الأساسية

إنشاء قيمة مفتاح

أضف قيمة المفتاح التالية إلى متجر App Configuration واترك Label و Content Type بقيمهما الافتراضية. لمزيد من المعلومات حول كيفية إضافة قيم المفاتيح إلى مخزن باستخدام مدخل Microsoft Azure أو CLI، انتقل إلى إنشاء قيمة مفتاح.

مفتاح القيمة
TestApp:الإعدادات:Message البيانات من Azure App Configuration

إعداد تطبيق Python

  1. إنشاء دليل جديد للمشروع المسمى app-configuration-example.

    mkdir app-configuration-example
    
  2. قم بالتبديل إلى دليل مثال تكوين التطبيق الذي تم إنشاؤه حديثا.

    cd app-configuration-example
    
  3. تثبيت مكتبة عميل تكوين تطبيق "Azure" باستخدام pip install الأمر.

    pip install azure-appconfiguration
    
  4. أنشئ ملفا جديدا يسمى app-configuration-example.py في دليل app-configuration-example وأضف التعليمات البرمجية التالية:

    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)
    

إشعار

ستساعدك القصاصات البرمجية في هذا المثال على البدء في مكتبة عميل App Configuration ل Python. بالنسبة إلى تطبيقك، يجب عليك أيضا التفكير في معالجة الاستثناءات وفقًا لاحتياجاتك. لمعرفة المزيد حول معالجة الاستثناء، يرجى الرجوع إلى وثائق Python SDKالخاصة بنا.

تكوين سلسلة اتصال تكوين التطبيق الخاصة بك

  1. قم بتعيين متغير بيئة يسمى AZURE_APPCONFIG_CONNECTION_STRING، وقم بتعيينه إلى سلسلة الاتصال لمتجر App Configuration. في سطر الأوامر، يوصى بتشغيل الأمر التالي:

    لتشغيل التطبيق محليا باستخدام موجه أوامر Windows، قم بتشغيل الأمر التالي واستبدل <app-configuration-store-connection-string> سلسلة الاتصال لمتجر تكوين التطبيق:

    setx AZURE_APPCONFIG_CONNECTION_STRING "connection-string-of-your-app-configuration-store"
    
  2. اطبع قيمة متغير البيئة للتحقق من أنه تم تعيينه بشكل صحيح باستخدام الأمر أدناه.

    باستخدام موجه أوامر Windows، أعد تشغيل موجه الأوامر للسماح بالتغيير أن يدخل حيز التنفيذ وشغل الأمر التالي:

    echo %AZURE_APPCONFIG_CONNECTION_STRING%
    

نماذج التعليمات البرمجية

تُظهِر لك عينة قصاصات التعليمات البرمجية في هذا القسم كيفية تنفيذ العمليات المشتركة مع مكتبة عميل تكوين التطبيق لـ Python. أضف قصاصات التعليمات البرمجية هذه إلى try الكتلة في ملف app-configuration-example.py الذي أنشأته سابقا.

إشعار

تشير مكتبة عميل تكوين التطبيق إلى كائن ذي قيمة مفتاح مثلConfigurationSetting. لذلك، في هذه المقالة، ستتم الإشارة إلى قيم المفاتيح في مخزن تكوين التطبيق كإعدادات التكوين.

تعرف أدناه على كيفية:

الاتصال بمخزن تكوين التطبيق

تنشئ قصاصة التعليمة البرمجية التالية مثيل "AppConfigurationClient" باستخدام سلسلة الاتصال المخزنة في متغيرات البيئة الخاصة بك.

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

الحصول على إعداد تكوين

يسترد مقتطف الكود التالي إعداد تكوين حسب key الاسم.

    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)

إضافة إعداد تكوين

تنشئ قصاصة التعليمة البرمجية التالية ConfigurationSetting كائنًا مع keyvalue وحقول ويستدعي add_configuration_setting الأسلوب. سوف يطرح هذا الأسلوب استثناءً إذا حاولت إضافة إعداد تكوين موجود مسبقًا في مخزنك. إذا كنت تريد تجنب هذا الاستثناء، يمكنك استخدام أسلوب 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)

الحصول على قائمة بإعدادات التكوين

تسترد قصاصة التعليمة البرمجية التالية قائمة بإعدادات التكوين. key_filterيمكن توفير الوسيطات وlabel_filter لتصفية قيم المفاتيح استنادًا إلى key وعلى label التوالي. لمزيد من المعلومات حول التصفية، راجع كيفية الاستعلام عن إعدادات التكوين.

    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)

تأمين إعداد تكوين

حالة تأمين قيمة مفتاح في تكوين التطبيق هو المشار إليها بواسطة read_only سمة ConfigurationSetting الكائن. إذاread_only كانTrue، فإن الإعداد مَّؤمن. set_read_onlyيمكن استدعاء الأسلوب باستخدام read_only=True وسيطة لتأمين إعداد التكوين.

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

إلغاء تأمين إعداد تكوين

إذا كانت read_only سمة ConfigurationSetting هيFalse، فإن الإعداد مؤمَّن. set_read_onlyيمكن استدعاء الأسلوب باستخدام read_only=False وسيطة لإلغاء تأمين إعداد التكوين.

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

تحديث إعداد تكوين

set_configuration_settingيمكن استخدام الأسلوب لتحديث إعداد موجود أو إنشاء إعداد جديد. تغير قصاصة التعليمة البرمجية التالية قيمة إعداد تكوين موجود.

    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)

حذف إعداد تكوين

تحذف قصاصة التعليمة البرمجية التالية إعداد تكوين حسب key الاسم.


    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)

تشغيل التطبيق

في هذا المثال، قمت بإنشاء تطبيق Python يستخدم مكتبة عميل Azure App Configuration لاسترداد إعداد تكوين تم إنشاؤه من خلال مدخل Microsoft Azure، وإضافة إعداد جديد، واسترداد قائمة بالإعدادات الموجودة، وتأمين الإعداد وإلغاء تأمينه، وتحديث إعداد، وأخيرا حذف إعداد.

عند هذه النقطة، يجب أن يحتوي ملف app-configuration-example.py على التعليمات البرمجية التالية:

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)

في نافذة وحدة التحكم الخاصة بك، انتقل إلى الدليل الذي يحتوي على ملف app-configuration-example.py ونفذ أمر Python التالي لتشغيل التطبيق:

python app-configuration-example.py

ينبغي أن تشاهد المخرج التالي:

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!

تنظيف الموارد

إذا كنت لا تريد مواصلة استخدام الموارد التي تم إنشاؤها في هذه المقالة، يوصى بحذف مجموعة الموارد التي أنشأتها هنا لتجنب الرسوم.

هام

حذف مجموعة الموارد لا يمكن التراجع عنه. يتم حذف مجموعة الموارد وجميع الموارد المضمنة فيها نهائيًا. تأكد من عدم حذفك للموارد أو مجموعة المورد الخاطئة عن غير قصد. في حالة إنشاء الموارد لهذه المقالة داخل مجموعة موارد تشتمل على موارد أخرى تريد الاحتفاظ بها، احذف كل مورد على حدة من الجزء الخاص به بدلًا من حذف مجموعة الموارد.

  1. سجل الدخول إلى مدخل Microsoft Azure، وحدد Resource groups.
  2. في المربع تصفية حسب الاسم ، أدخل اسم مجموعة الموارد الخاصة بك.
  3. في قائمة النتائج، حدد اسم مجموعة الموارد لاستعراض نظرة عامة.
  4. حدد Delete resource group.
  5. يُطلب منك تأكيد حذف مجموعة الموارد. أدخل اسم مجموعة الموارد للتأكيد وحدد "Delete".

بعد بضع لحظات، يتم حذف مجموعة الموارد وكافة مواردها.

الخطوات التالية

أظهر لك هذا الدليل كيفية استخدام Azure SDK ل Python للوصول إلى بياناتك في Azure App Configuration.

للحصول على عينات تعليمات برمجية إضافية، قم بزيارة:

لمعرفة كيفية استخدام Azure App Configuration مع تطبيقات Python، انتقل إلى: