مشاركة عبر


إنشاء تطبيق Node.js باستخدام Azure SDK ل JavaScript

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

هام

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

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

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

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

مفتاح القيمة
TestApp:الإعدادات:رسالة البيانات من تكوين تطبيق Azure

إعداد تطبيق "Node.js"

  1. في هذا البرنامج التعليمي، ستقوم بإنشاء دليل جديد للمشروع المسمى app-configuration-example.

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

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

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

    const { AppConfigurationClient } = require("@azure/app-configuration");
    
    async function run() {
      console.log("Azure App Configuration - JavaScript example");
      // Example code goes here
    }
    
    run().catch(console.error);
    

إشعار

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

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

توضح لك نماذج مقتطفات التعليمات البرمجية في هذا القسم كيفية تنفيذ العمليات الشائعة باستخدام مكتبة عميل تكوين التطبيق ل JavaScript. أضف قصاصات التعليمات البرمجية هذه إلى نص الدالة run في ملف app-configuration-example.js الذي أنشأته سابقا.

إشعار

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

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

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

ينشئ مقتطف التعليمات البرمجية التالي مثيل AppConfigurationClient. يمكنك الاتصال بمخزن App Configuration باستخدام معرف Microsoft Entra (مستحسن) أو سلسلة الاتصال.

يمكنك استخدام DefaultAzureCredential للمصادقة على متجر App Configuration. اتبع الإرشادات لتعيين بيانات الاعتماد الخاصة بك دور قارئ بيانات تكوين التطبيق. تأكد من السماح بوقت كاف للإذن للنشر قبل تشغيل التطبيق الخاص بك.

const { DefaultAzureCredential } = require("@azure/identity");
const { AppConfigurationClient } = require("@azure/app-configuration");

const client = new AppConfigurationClient(
  process.env.AZURE_APPCONFIG_ENDPOINT,
  new DefaultAzureCredential()
);

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

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

    const retrievedConfigSetting = await client.getConfigurationSetting({
        key: "TestApp:Settings:Message"
    });
    console.log("\nRetrieved configuration setting:");
    console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);

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

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

    const configSetting = {
        key:"TestApp:Settings:NewSetting",
        value:"New setting value"
    };
    const addedConfigSetting = await client.addConfigurationSetting(configSetting);
    console.log("\nAdded configuration setting:");
    console.log(`Key: ${addedConfigSetting.key}, Value: ${addedConfigSetting.value}`);

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

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

    const filteredSettingsList = client.listConfigurationSettings({
        keyFilter: "TestApp*"
    });
    console.log("\nRetrieved list of configuration settings:");
    for await (const filteredSetting of filteredSettingsList) {
        console.log(`Key: ${filteredSetting.key}, Value: ${filteredSetting.value}`);
    }

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

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

    const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
    console.log(`\nRead-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);

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

إذا كانت readOnly سمة ConfigurationSetting هيfalse، فإن الإعداد مؤمَّن. setReadOnly يمكن استدعاء الأسلوب باستخدام false كوسيطة ثانية لإلغاء تأمين إعداد التكوين.

    const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
    console.log(`\nRead-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);

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

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

    addedConfigSetting.value = "Value has been updated!";
    const updatedConfigSetting = await client.setConfigurationSetting(addedConfigSetting);
    console.log("\nUpdated configuration setting:");
    console.log(`Key: ${updatedConfigSetting.key}, Value: ${updatedConfigSetting.value}`);

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

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

    const deletedConfigSetting = await client.deleteConfigurationSetting({
        key: "TestApp:Settings:NewSetting"
    });
    console.log("\nDeleted configuration setting:");
    console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);

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

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

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

const { DefaultAzureCredential } = require("@azure/identity");
const { AppConfigurationClient } = require("@azure/app-configuration");

async function run() {
    console.log("Azure App Configuration - JavaScript example");

    const client = new AppConfigurationClient(
        process.env.AZURE_APPCONFIG_ENDPOINT,
        new DefaultAzureCredential()
    );

    const retrievedConfigSetting = await client.getConfigurationSetting({
        key: "TestApp:Settings:Message"
    });
    console.log("\nRetrieved configuration setting:");
    console.log(`Key: ${retrievedConfigSetting.key}, Value: ${retrievedConfigSetting.value}`);

    const configSetting = {
        key: "TestApp:Settings:NewSetting",
        value: "New setting value"
    };
    const addedConfigSetting = await client.addConfigurationSetting(configSetting);
    console.log("Added configuration setting:");
    console.log(`Key: ${addedConfigSetting.key}, Value: ${addedConfigSetting.value}`);

    const filteredSettingsList = client.listConfigurationSettings({
        keyFilter: "TestApp*"
    });
    console.log("Retrieved list of configuration settings:");
    for await (const filteredSetting of filteredSettingsList) {
        console.log(`Key: ${filteredSetting.key}, Value: ${filteredSetting.value}`);
    }

    const lockedConfigSetting = await client.setReadOnly(addedConfigSetting, true /** readOnly */);
    console.log(`Read-only status for ${lockedConfigSetting.key}: ${lockedConfigSetting.isReadOnly}`);

    const unlockedConfigSetting = await client.setReadOnly(lockedConfigSetting, false /** readOnly */);
    console.log(`Read-only status for ${unlockedConfigSetting.key}: ${unlockedConfigSetting.isReadOnly}`);

    addedConfigSetting.value = "Value has been updated!";
    const updatedConfigSetting = await client.setConfigurationSetting(addedConfigSetting);
    console.log("Updated configuration setting:");
    console.log(`Key: ${updatedConfigSetting.key}, Value: ${updatedConfigSetting.value}`);

    const deletedConfigSetting = await client.deleteConfigurationSetting({
        key: "TestApp:Settings:NewSetting"
    });
    console.log("Deleted configuration setting:");
    console.log(`Key: ${deletedConfigSetting.key}, Value: ${deletedConfigSetting.value}`);
}

run().catch(console.error);

تكوين متغير بيئة

  1. تكوين متغير بيئة باستخدام معرف Microsoft Entra (مستحسن) أو سلسلة الاتصال.

    قم بتعيين متغير بيئة يسمى AZURE_APPCONFIG_ENDPOINT إلى نقطة نهاية متجر App Configuration الموجود ضمن نظرة عامة على متجرك في مدخل Microsoft Azure.

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

    setx AZURE_APPCONFIG_ENDPOINT "endpoint-of-your-app-configuration-store"
    

    إذا كنت تستخدم PowerShell، فقم بتشغيل الأمر التالي:

    $Env:AZURE_APPCONFIG_ENDPOINT = "endpoint-of-your-app-configuration-store"
    

    إذا كنت تستخدم macOS أو Linux، فقم بإجراء الأمر التالي:

    export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
    
  2. في نافذة وحدة التحكم الخاصة بك، انتقل إلى الدليل الذي يحتوي على ملف app-configuration-example.js ونفذ الأمر التالي لتشغيل التطبيق:

    node app.js
    

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

    Azure App Configuration - JavaScript 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 ل JavaScript للوصول إلى قيم المفاتيح في تكوين تطبيق Azure.

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

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