الوصول إلى واجهة برمجة تطبيقات باستخدام موصِّل Azure Logic Apps مخصص

مكتمل

بصفتك المطور الرئيسي لشركة تأطير الطباعة، تريد استدعاء واجهة برمجة تطبيقات ويب داخلية تم إنشاؤها خصيصا من سير العمل في Azure Logic Apps. تحسب واجهة برمجة التطبيقات سعر إطار صورة استنادا إلى أبعاد الإطار. للوصول إلى واجهة برمجة التطبيقات من سير عمل Azure Logic Apps، ستحتاج أولاً إلى إنشاء موصِّل مخصص.

في هذا الدرس، ستتعلم كيفية إنشاء موصِّلات مخصصة واستخدامها في سير عمل Azure Logic Apps.

ما أهمية الموصلات المخصصة؟

في بعض الأحيان، تحتاج إلى ما هو أكثر من الموصِّلات التي تم إنشاؤها مسبقاً لسيناريو سير عملك. افترض أن لديك واجهة برمجة تطبيقات مخصصة أو محلية تريد استدعاءها من سير عملك. لا تدعم الموصِّلات الجاهزة للاستخدام في Azure Logic Apps هذا السيناريو. لذا، عليك بدلاً من ذلك إنشاء موصِّل مخصص يصف واجهة برمجة التطبيقات لديك. حدد المشغّلات في الموصِّل عندما تريد أن يستجيب سير عملك لحدث واجهة برمجة تطبيقات. حدد الإجراءات في الموصِّل عندما تريد أن يجري سير العمل عمليات استدعاء لواجهة برمجة التطبيقات.

وصف واجهة برمجة تطبيقات ويب لموصِّل مخصص

يمكنك إنشاء موصل مخصص في مدخل Azure والإشارة إلى هدف واجهة برمجة التطبيقات API. يجب أن تصف واجهة برمجة التطبيقات لديك نفسها للموصِّل المخصص. بهذه الطريقة، سيتمكّن الموصِّل من تقديم الأساليب والمعلمات الصحيحة إلى Azure Logic Apps. في واجهة برمجة التطبيقات لديك، يمكنك تطبيق هذا الوصف باستخدام تعريف OpenAPI أو مجموعة Postman. دعونا نستكشف طريقتي وصف واجهة برمجة التطبيقات هاتين.

تطبيق Postman

يتطلب تطبيق Postman منك توفير عنوان URL للطلب وأي مصادقة مطلوبة. يمكنك أيضاً تحديد مفتاح API ونوع المحتوى مع تعريف نص الطلب بتنسيق JSON. عند إرسال الطلب من تطبيق Postman، ترجع واجهة برمجة التطبيقات استجابة. يستخدم تطبيق Postman الاستجابة لإنشاء مجموعة. يمكنك تصدير المجموعة واستخدامها لوصف واجهة برمجة التطبيقات لموصِّل مخصص.

تعريف OpenAPI

ملف تعريف OpenAPI هو ملف JSON يسرد أساليب API والمعلمات والمخرجات. في .NET، يمكنك إنشاء ملف OpenAPI عن طريق إضافة حزمة Swashbuckle NuGet إلى مشروع API الخاص بك. بعد ذلك، أضف التعليمة البرمجية بالأسفل إلى التعليمة البرمجية المصدر لواجهة برمجة تطبيقات الويب:

  1. في الملف Startup.cs، أضف عبارة using لـ Swashbuckle:

    using Swashbuckle.AspNetCore.Swagger;
    
  2. أضف التعليمة البرمجية التالية إلى الأسلوب ConfigureServices:

    services.AddSwaggerGen(c =>
    {
       c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
    });
    
  3. أضف التعليمة البرمجية التالية إلى الأسلوب Configure:

    if (env.IsDevelopment())
    {
       // Enable middleware to serve generated Swagger as a JSON endpoint.
       app.UseSwagger();
    
       // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), 
       // specifying the Swagger JSON endpoint.
       app.UseSwaggerUI(c =>
       {
          c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
       });
    }
    

    عند النشر، تقوم هذه التعليمة البرمجية بتثبيت واجهة مستخدم Swagger، وهي صفحة ويب يمكنك استخدامها لاختبار أساليب واجهة برمجة تطبيقات الويب. تنشئ التعليمة البرمجية أيضاً ملف JSON يصف واجهة برمجة التطبيقات لديك ويتوافق مع معيار OpenAPI وتنشره. يمكنك تنزيل ملف JSON واستخدامه لإنشاء موصِّل مخصص في Azure Logic Apps.

    إشعار

    في التمرين السابق، قمت بتوزيع واجهة برمجة تطبيقات ويب تم إنشاؤها مسبقاً إلى Azure. بشكل افتراضي، تضمنت عملية التوزيع هذه تعليمة Swagger البرمجية السابقة. في التمرين التالي، ستقوم بتحميل ملف OpenAPI الذي أنشئه Swagger، إلى الموصِّل المخصص.

إنشاء موصِّل مخصص في مدخل Azure

بعد تنفيذ الوصف باعتباره ملف تعريف OpenAPI أو مجموعة Postman، يمكنك إنشاء موصِّلك المخصص في مدخل Azure باتباع هذه الخطوات عالية المستوى:

  1. أنشئ مورد Azure جديداً باستخدام نوع المورد Logic Apps Custom Connector.

  2. قم بتحميل مجموعة Postman أو ملف تعريف OpenAPI.

    Screenshot that shows how to upload an OpenAPI file for a custom connector.

  3. اتبع مطالبات معالج الإعداد لإنهاء إنشاء الموصِّل.

    على سبيل المثال، يمكنك تحديد اسم الموصِّل الذي يراه المطورون في مصمم سير العمل. يمكنك إضافة أوصاف لمساعدة المطورين على تكوين اتصالات آمنة واستخدام الموصِّل بشكل صحيح.

  4. حفظ الموصل الجديد الخاص بك.

عند الانتهاء، يمكنك استخدام الموصِّل في سير عمل Azure Logic Apps. يوضح لك التمرين التالي كيفية إنشاء موصل خاص بك.