استيراد تطبيق Azure Container كواجهة برمجة تطبيقات

توضح هذه المقالة كيفية استيراد تطبيق حاوية Azure إلى إدارة واجهة برمجة تطبيقات Azure واختبار واجهة برمجة التطبيقات المستوردة باستخدام مدخل Azure. ستتعلم في هذا المقال طريقة إجراء ما يلي:

  • استيراد تطبيق حاوية يعرض واجهة برمجة تطبيقات ويب
  • حدد التطبيق في مدخل Microsoft Azure

ملاحظة

تطبيقات حاوية Azure قيد المعاينة حاليا.

كشف تطبيق الحاوية باستخدام إدارة واجهة برمجة التطبيقات

تتيح لك تطبيقات حاويات Azure نشر التطبيقات المعبأة في حاويات دون إدارة البنية الأساسية المعقدة. يمكن لمطوري واجهة برمجة التطبيقات كتابة التعليمات البرمجية باستخدام لغة البرمجة أو إطار العمل المفضل لديهم ، وإنشاء خدمات مصغرة مع الدعم الكامل لوقت تشغيل التطبيقات الموزعة (Dapr) ، والتوسع استنادا إلى حركة مرور HTTP أو الأحداث الأخرى.

إدارة واجهة برمجة التطبيقات هي البيئة الموصى بها لعرض واجهة برمجة تطبيقات الويب المستضافة لتطبيق الحاوية، لعدة أسباب:

  • فصل إدارة وتأمين الواجهة الأمامية المكشوفة لمستهلكي واجهة برمجة التطبيقات عن إدارة واجهة برمجة تطبيقات الويب الخلفية ومراقبتها
  • إدارة واجهات برمجة تطبيقات الويب المستضافة كتطبيقات حاوية في نفس بيئة واجهات برمجة التطبيقات الأخرى
  • تطبيق السياسات لتغيير سلوك واجهة برمجة التطبيقات، مثل تحديد سعر المكالمة
  • توجيه مستهلكي واجهة برمجة التطبيقات إلى بوابة المطورين القابلة للتخصيص في APIM لاكتشاف واجهات برمجة التطبيقات والتعرف عليها وطلب الوصول وتجربتها

لمزيد من المعلومات، راجع حول APIM .

مواصفات OpenAPI مقابل عمليات أحرف البدل

تدعم إدارة واجهة برمجة التطبيقات استيراد تطبيقات الحاويات التي توفر مواصفات OpenAPI (تعريف Swagger). ومع ذلك، فإن مواصفات OpenAPI ليست مطلوبة. نوصي بتوفير مواصفات OpenAPI. يمكن لإدارة واجهة برمجة التطبيقات استيراد العمليات الفردية، مما يسمح لك بالتحقق من صحة التكوينات وإدارتها وتأمينها وتحديثها لكل عملية على حدة.

إذا كان تطبيق الحاوية يعرض مواصفات OpenAPI، تقوم إدارة واجهة برمجة التطبيقات بإنشاء عمليات واجهة برمجة التطبيقات التي يتم تعيينها مباشرة إلى التعريف. ستبحث إدارة واجهة برمجة التطبيقات في عدة مواقع عن مواصفات OpenAPI

  • تكوين تطبيق الحاوية.
  • /openapi.json
  • /openapi.yml
  • /swagger/v1/swagger.json

إذا لم يتم توفير مواصفات OpenAPI، تنشئ APIM عمليات أحرف البدل لأفعال HTTP الشائعة (GET وPUT وما إلى ذلك). لا يزال بإمكانك الاستفادة من نفس ميزات إدارة واجهة برمجة التطبيقات، ولكن لا يتم تعريف العمليات بنفس مستوى التفاصيل.

في كلتا الحالتين ، يمكنك تحرير أو إضافة عمليات إلى واجهة برمجة التطبيقات بعد الاستيراد.

مثال

قد يدعم تطبيق "الحاويات" الخلفي عمليتي GET:

  • https://myappservice.azurewebsites.net/customer/{id}
  • https://myappservice.azurewebsites.net/customers

يمكنك استيراد تطبيق الحاويات إلى خدمة إدارة واجهة برمجة التطبيقات في مسار مثل https://contosoapi.azure-api.net/store. يوضح الجدول التالي العمليات التي تم استيرادها إلى APIM، إما بمواصفات OpenAPI أو بدونها:

النوع العمليات المستوردة طلبات عينات
مواصفات OpenAPI GET /customer/{id}

GET /customers
GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers
بدل GET /* GET https://contosoapi.azure-api.net/store/customer/1

GET https://contosoapi.azure-api.net/store/customers

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

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

الانتقال إلى مثيل إدارة واجهة برمجة التطبيقات لديك

  1. في مدخل Azure، ابحث عن خدمات إدارة واجهة برمجة التطبيقات وحددها.

    Select API Management services

  2. في صفحة خدمات إدارة واجهة برمجة التطبيقات، حدد مثيل إدارة واجهة برمجة التطبيقات.

    Select your API Management instance

استيراد واجهة برمجة تطبيقات خلفية ونشرها

  1. انتقل إلى خدمة إدارة API في بوابة Azure وحدد واجهات برمجة التطبيقات من القائمة.

  2. حدد تطبيق الحاوية من القائمة.

    Create from Container App

  3. حدد استعراض للاطلاع على قائمة تطبيقات الحاويات في اشتراكك.

  4. حدد تطبيق حاوية. إذا كان تعريف OpenAPI مقترنا بتطبيق الحاوية المحدد، فإن إدارة واجهة برمجة التطبيقات تجلبه وتستورده. إذا لم يتم العثور على تعريف OpenAPI، تعرض APIM واجهة برمجة التطبيقات عن طريق إنشاء عمليات أحرف البدل لأفعال HTTP الشائعة.

  5. إضافة لاحقة عنوان URL API. اللاحقة هي اسم يعرّف واجهة برمجة التطبيقات المحددة هذه في مثيل APIM هذا. يجب أن يكون فريداً في مثيل APIM.

  6. نشر API عن طريق ربط API بمنتج. في هذه الحالة، يتم استخدام منتج "Unlimited" . إذا كنت تريد نشر واجهة برمجة التطبيقات وإتاحتها للمطورين، فأضفها إلى أحد المنتجات.

    ملاحظة

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

    يأتي كل مثيل لإدارة واجهة برمجة التطبيقات مع نموذجين من المنتجات عند إنشائها:

    • Starter
    • ⁩غير محدود⁧
  7. أدخل إعدادات API الأخرى. يمكنك تعيين القيم في أثناء الإنشاء أو تكوينها لاحقًا عن طريق الانتقال إلى علامة التبويب الإعدادات. يتم شرح الإعدادات في استيراد ونشر البرنامج التعليمي الأول لواجهة برمجة التطبيقات.

  8. حدد "Create".

    Create API from Container App

اختبار API الجديد في مدخل Microsoft Azure

يمكن استدعاء العمليات مباشرة من مدخل Microsoft Azure الذي يوفر طريقة ملائمة لعرض واختبار عمليات واجهة برمجة التطبيقات. يمكنك أيضًا اختبار واجهة برمجة التطبيقات في بوابة المطورين أو استخدام أدوات عميل REST الخاصة بك.

  1. تحديد API التي أنشأتها في الخطوة السابقة.

  2. حدد علامة التبويباختبار.

  3. حدد عملية.

    تعرض الصفحة الحقول لمعلمات الاستعلام وحقول الرؤوس. أحد الرؤوس هو Ocp-Apim-Subscription-Key، لمفتاح الاشتراك للمنتج المقترن بواجهة برمجة التطبيقات هذه. إذا قمت بإنشاء مثيل APIM، فأنت مسؤول بالفعل، لذلك يتم ملء المفتاح تلقائيًا.

  4. اضغط Send.

    عند نجاح الاختبار، تستجيب الواجهة الخلفية بـ 200 OK وبعض البيانات.

اختبر عملية أحرف البدل في البوابة

عند إنشاء عمليات حرف البدل، قد لا يتم تعيين العمليات مباشرة إلى واجهة برمجة التطبيقات الخلفية. على سبيل المثال، تستخدم عملية GET الخاصة بحرف البدل التي يتم استيرادها في APIM المسار / افتراضيًا. ومع ذلك، قد تدعم واجهة API الخلفية الخاصة بك عملية GET على المسار التالي:

/api/TodoItems

يمكنك اختبار المسار /api/TodoItems على النحو التالي.

  1. حدد API الذي قمت بإنشائه، وحدد العملية.

  2. حدد علامة التبويباختبار.

  3. في معلمات النموذج، قم بتحديث القيمة بجوار اسم حرف البدل (*). على سبيل المثال، أدخل api/TodoItems. يتم إلحاق هذه القيمة بالمسار / لعملية حرف البدل.

    Test wildcard operation

  4. حدد ⁧⁩Send⁧⁩.

إلحاق واجهات برمجة تطبيقات أخرى

يمكنك إنشاء واجهة برمجة تطبيقات من واجهات برمجة التطبيقات التي تعرضها الخدمات المختلفة، وتشمل:

  • مواصفات OpenAPI
  • واجهة برمجة تطبيقات SOAP
  • Web App مستضاف في Azure App Service
  • تطبيق الوظائف Azure
  • Azure Logic Apps
  • Azure Service Fabric

إلحاق واجهة برمجة تطبيقات أخرى بتلك الحالية باتباع الخطوات التالية.

ملاحظة

عند استيراد واجهة برمجة تطبيقات أخرى، يتم إلحاق العمليات بواجهة برمجة التطبيقات الحالية.

  1. انتقل إلى مثيل Azure API Management في مدخل Azure.

    Go to Azure API Mgmt instance

  2. حدّد واجهات برمجة التطبيقات في الصفحة نظرة عامة أو من القائمة الموجودة إلى اليمين.

    Select APIs

  3. انقر فوق ... بجوار واجهة برمجة التطبيقات التي تريد إلحاق واجهة برمجة تطبيقات أخرى بها.

  4. حدّد استيراد من القائمة المنسدلة.

    Select import

  5. حدّد خدمة لاستيراد واجهة برمجة تطبيقات منها.

    Select service

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