إنشاء خادم وكيل SOAP

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

ما ستتعلمه

من خلال هذا البرنامج التعليمي، ستتعلّم كيفية:

  • إنشاء خادم وكيل لواجهة Edge API من ملف WSDL
  • معرفة الفرق بين نوع وكيل RESTful SOAP ووكيل SOAP للتمرير.

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

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

المتطلبات

  • حساب على Apigee Edge إذا لم يكن لديك حساب، يمكنك الاشتراك باتّباع التعليمات الواردة في إنشاء حساب على Apigee Edge.

إنشاء الخادم الوكيل

في هذه الحالة، سيُنشئ Edge الخادم الوكيل الذي سيتم وضعه أمام خدمة SOAP. هناك نوعان من خوادم وكيل SOAP API:

  • ينشئ نوع الخادم الوكيل REST-SOAP-REST واجهة برمجة تطبيقات RESTful جديدة تتضمّن طبقة ترجمة إلى SOAP. تستدعي التطبيقات هذه الخدمة كما تستدعي الخدمات الأخرى المتوافقة مع REST، مع تمرير مَعلمات طلب البحث التي تحتاجها خدمة الخلفية. يحوّل Edge ذلك إلى حمولة SOAP التي تتوقعها الخدمة.
  • يتيح نوع الخادم الوكيل Pass-through proxy للعملاء إدخال حمولة SOAP ببساطة. هذه طريقة للاستفادة من ميزات إدارة Edge في طلبات خدمة SOAP.

Edge

لإعداد وكيل لخدمة SOAP باستخدام واجهة مستخدم Edge، اتّبِع الخطوات التالية:

  1. سجِّل الدخول إلى apigee.com/edge.
  2. انقر على تطوير > خوادم وكيلة لواجهة برمجة التطبيقات في شريط التنقّل الأيمن.
  3. انقر على +الخادم الوكيل.
  4. انقر على خدمة SOAP.
  5. في صفحة "تفاصيل الخادم الوكيل"، أدخِل ما يلي:

    الحقل الوصف
    مصدر WSDL

    اختَر: عنوان URL

    انسخ عنوان URL التالي الخاص بـ WSLD والصِقه في حقل إدخال عنوان URL:

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    انقر على التحقّق.

    يحصل Apigee Edge على ملف WSDL ويقرأه لاكتشاف قائمة العمليات التي تتيحها خدمة SOAP.

    الاسم

    عدم اتّخاذ أي إجراء: delayedstockquote

    هذا هو اسم خادم وكيل واجهة برمجة التطبيقات الذي تريد إنشاءه.

    المسار الأساسي عدم اتّخاذ أي إجراء: /delayedstockquote
    الوصف يمكنك اختياريًا إضافة وصف، مثل: Stock quote WSDL API Proxy
  6. انقر على التالي.
  7. في صفحة السياسات الشائعة، ضِمن الأمان: التفويض، اختَر التمرير (بدون تفويض).
  8. انقر على التالي.
  9. في صفحة عمليات WSDL، اختَر REST إلى SOAP إلى REST.

    بعد اختيار نوع الخادم الوكيل، يعرض Edge قائمة بالعمليات التي سيتم إنشاء مسارات REST API لها. تتيح لك هذه القائمة الاختيار من بين العمليات المتوفّرة في WSDL (في حال كان لديك مجموعة معيّنة تبحث عنها). لاحظ أنّ الجدول يعرض أيضًا المراجع التي يمكن لبرنامج REST استخدامه لاستدعاء خدمة SOAP الخلفية.

    اترك جميع الخيارات الأخرى في الصفحة كما هي.

  10. انقر على التالي.
  11. اقبل الإعدادات التلقائية للمضيف الافتراضي من خلال النقر على التالي.
  12. في صفحة الملخّص، ضِمن "النشر الاختياري"، انقر على اختبار ثم على إنشاء ونشر.

    ينشئ Edge خادمًا وكيلاً لواجهة RESTful API وينشره في بيئة test. من WSDL، يحدّد التطبيق العمليات المتوافقة مع الخدمة ومعلمات الإدخال وما إلى ذلك. يقترح Edge طريقة HTTP التي يجب استخدامها لكل عملية. عادةً، يحوّل Edge العمليات إلى طلبات GET، التي تتميّز بإمكانية تخزينها مؤقتًا. يُعدّ Edge أيضًا نقطة النهاية المستهدَفة للخادم الخلفي، والتي يمكن أن تختلف حسب عملية SOAP.

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

Classic Edge (Private Cloud)

لإعداد وكيل لخدمة SOAP باستخدام واجهة مستخدم Classic Edge، اتّبِع الخطوات التالية:

  1. سجِّل الدخول إلى http://ms-ip:9000، حيث ms-ip هو عنوان IP أو اسم نظام أسماء النطاقات لعقدة خادم الإدارة.
  2. انقر على واجهات برمجة التطبيقات > خوادم وكيلة لواجهات برمجة التطبيقات في شريط التنقّل العلوي.
  3. انقر على + خادم وكيل لواجهة برمجة التطبيقات.
  4. انقر على خدمة SOAP.
  5. في صفحة "تفاصيل الخادم الوكيل"، أدخِل ما يلي:

    الحقل الوصف
    WSDL

    اختَر: مثال على عنوان URL

    بعد ذلك، اختَر:
    ...delayedstockquote.asmx?WSDL

    انقر على التحقّق.

    يحصل Apigee Edge على ملف WSDL ويقرأه لاكتشاف قائمة العمليات التي تتيحها خدمة SOAP.

    اسم الخادم الوكيل

    أدخِل: delayedstockquote

    هذا هو اسم الخادم الوكيل الذي تريد إنشاءه.

    مسار الخادم الوكيل الأساسي والوصف عدم اتّخاذ أي إجراء
  6. انقر على التالي.
  7. في صفحة WSDL، حدِّد الخيارات التالية:
    في هذا الحقل اتّبِع الخطوات التالية
    نوع خادم وكيل لواجهة برمجة التطبيقات

    اختَر: REST إلى SOAP إلى REST

    بعد اختيار نوع الخادم الوكيل، يعرض Edge قائمة بالعمليات التي سيتم إنشاء مسارات REST API لها، كما هو موضّح هنا. تمنحك هذه القائمة فرصة الاختيار من بين العمليات الموجودة في WSDL (في حال كان لديك مجموعة معينة تبحث عنها). لاحظ أنّ الجدول يعرض أيضًا المراجع التي يمكن لبرنامج REST استخدامه لاستدعاء خدمة SOAP الخلفية.

    في الوقت الحالي، ما عليك سوى ترك المجموعة الأولى من العمليات محدّدة.

    نوع المنفذ: DelayedStockQuoteSoap اختَر جميع عمليات WSDL الثلاث. اترك الإعدادات الأخرى كما هي.

  8. انقر على التالي.
  9. في صفحة "الأمان"، انقر على بدون تغيير (لا شيء).
  10. انقر على التالي.
  11. اقبل الإعدادات التلقائية للمضيف الافتراضي، وانقر على التالي.
  12. في صفحة "الإنشاء" (Build)، اقبل الإعدادات التلقائية وانقر على الإنشاء والنشر (Build and Deploy) لكي يبدأ Edge في إنشاء الخادم الوكيل.

    ينشئ Edge خادمًا وكيلاً لواجهة برمجة تطبيقات RESTful. من WSDL، يحدّد التطبيق العمليات المتوافقة مع الخدمة ومعلمات الإدخال وما إلى ذلك. يقترح Edge طريقة HTTP التي يجب استخدامها لكل عملية. عادةً، يحوّل Edge العمليات إلى طلبات GET، التي تتميّز بإمكانية تخزينها مؤقتًا. يُعدّ Edge أيضًا نقطة النهاية المستهدَفة للخادم الخلفي، والتي يمكن أن تختلف حسب عملية SOAP.

    ما لم تكن بصدد تخصيص الخادم الوكيل الجديد (وهذا ليس موضوع هذا الدليل التعليمي)، هذا كل ما عليك معرفته. يمكنك الانتقال إلى اختبار الخادم الوكيل الجديد.

اختبار الخادم الوكيل

لتجربة الخادم الوكيل الذي أنشأته، افتح موجّه الأوامر واستخدِم cURL. اكتب الأمر التالي، حيث:

  • ‫ORG هو اسم مؤسسة Edge التي أنشأت فيها الخادم الوكيل.
  • ENV هي البيئة التي يتم نشر الخادم الوكيل فيها.
  • يمثّل DOMAIN مثيل Edge الذي تستخدمه.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

على سبيل المثال، إذا كانت مؤسستك هي docfood، وكانت البيئة test، وكنت تستخدم Edge enterprise cloud، عليك تنفيذ أمر مشابه لما يلي:

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

إذا أدخلت GOOG في مَعلمة طلب البحث StockSymbol، من المفترض أن تحصل على السعر الحالي لسهم الفئة C من شركة Alphabet Inc. على سبيل المثال:

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

الحصول على مواصفات OpenAPI التي يتم إنشاؤها تلقائيًا

عندما تستخدم خدمة SOAP من خلال "REST إلى SOAP إلى REST"، ينشئ Edge تلقائيًا مواصفات OpenAPI. يمكنك استخدام مواصفات OpenAPI لإنشاء مستندات واجهة برمجة التطبيقات.

للحصول على مواصفات OpenAPI، ما عليك سوى الانتقال إلى عنوان URL التالي:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

درجة إضافية: كيف يمكنك معرفة المورد والفعل ومَعلمات طلب البحث التي يجب استخدامها؟

في طلب البيانات من واجهة برمجة التطبيقات التجريبي، استخدَمت موردًا معيّنًا ومَعلمات طلب بحث في طلب cURL إلى خدمة SOAP الخلفية. ولكن كيف يمكنك معرفة ذلك بنفسك؟

المورد والفعل

في معالج خادم وكيل واجهة برمجة التطبيقات، رأيت أثناء إنشاء الخادم الوكيل كيف سيتم ربط عمليات SOAP بأفعال وموارد واجهة برمجة التطبيقات. ولكن إذا لم تسجِّل هذه المعلومات، إليك كيفية العثور عليها بعد إنشاء الوكيل.

في علامة التبويب تطوير الخاصة بخادم وكيل واجهة برمجة التطبيقات، ستظهر لك في جزء "المستكشف" على اليمين قائمة بالمسارات ضمن نقاط نهاية الخادم الوكيل. انقر على المسار الذي يهمّك. على سبيل المثال، يُعدّ مسار GetQuote خيارًا جيدًا. بعد ذلك، اعرض ملف XML في لوحة "الرمز"، التي تعرض مسار المورد والفعل الخاصين بالمسار في العنصر <Condition>: /quote وGET.

مَعلمات طلب البحث

بعد اختيار مسار GetQuote، انقر على السياسة الأولى في العرض البياني للمسار. يجب أن تكون سياسة "استخراج المتغيّرات" التي تسجّل مَعلمات طلب البحث التي من المتوقّع تمريرها: StockSymbol وLicenseKey. (إذا أجريت بحثًا على الويب عن خدمة SOAP، سيتم إعلامك بما يجب إدخاله في LicenseKey).

يتم حفظ مَعلمات طلب البحث التي تم التقاطها كمتغيرات وتستخدمها السياسة التالية لإنشاء رسالة SOAP.