Apidog

منصة تطوير API تعاونية متكاملة

تصميم API

توثيق API

تصحيح أخطاء API

محاكاة API

اختبار API الآلي

استدعاء واجهات برمجة التطبيقات SOAP باستخدام cURLs (مع صورة)

تسمح أوامر cURL للمطورين بإنشاء وإرسال واختبار وتصحيح طلبات SOAP والتواصل بسهولة. في هذه المقالة، سأظهر لك كيفية اختبار خدمة ويب SOAP باستخدام cURL بسهولة.

@apidog

@apidog

Updated on نوفمبر 6, 2024

تتكون العبارة "SOAP cURLs" من تقنيتين شهيرتين قد سمعت عنهما من قبل. قبل أي شيء آخر، يناقش هذا المقال التقنيات وقدراتها.

💡
Apidog، منصة تطوير تصميم واجهة برمجة التطبيقات، توفر لمستخدميها العديد من التعديلات والمواصفات لدورة حياة واجهة برمجة التطبيقات بالكامل.

إذا كنت بحاجة إلى منصة واجهة برمجة تطبيقات لبناء، تنويه، تصحيح، أو توثيق واجهات برمجة التطبيقات، فإن Apidog هو الخيار الأمثل. كل ما عليك فعله هو النقر على الزر أدناه. 👇 👇 👇 

مصطلحات أساسية حول SOAP و cURLs

تشير المصطلحات "SOAP" و "cURL" كل منها إلى تقنية فريدة.

  • SOAP: SOAP (بروتوكول وصول الكائنات البسيط) هو بروتوكول مراسلة يستخدم أساسًا لتبادل المعلومات المهيكلة بين تطبيقين أو نظامين.

    يلعب دورًا مهمًا في صناعة خدمات الويب نظرًا لقدراته في تسهيل تبادل البيانات والتواصل بين مكونات البرمجيات المختلفة.

    SOAP هو بروتوكول منظم للغاية يستخدم تنسيق XML، ويستخدم بشكل رئيسي لتطبيقات الشركات أو الأنظمة القديمة. مع ما تم ذكره، قد تكون قد لاحظت أن بروتوكولات أخرى أصبحت أكثر شعبية، مثل أسلوب العمارة REST الذي تمت مناقشته بكثرة.

    خدمات الويب SOAP عادة ما تأتي أيضًا في شكل ملفات WSDL.
  • cURL: cURL تعني "عميل لـ URL". cURL هو برنامج مجاني ومفتوح المصدر يوفر وظيفتين رئيسيتين، أداة سطر أوامر curl ومكتبة libcurl.

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

    من ناحية أخرى، تعمل المكتبة libcurl كوظيفة أساسية لنقل البيانات. يمكن دمج libcrul في العديد من لغات البرمجة الشائعة، مثل C و C++ و Python و PHP. مع libcrul، يمكن للمطورين الاستفادة من أداء cURL مع التطبيقات للمهام مثل أتمتة تنزيل الملفات ورفعها، بالإضافة إلى بناء أدوات أو تطبيقات مخصصة للتفاعل مع خدمات الويب.

عندما يتم دمج المصطلحات، تشير "SOAP cURLs" إلى استخدام وظائف cURL للتفاعل بشكل خاص مع خدمات الويب التي تستند إلى SOAP.

تحليل كيفية عمل SOAP cURLs

1. تعريف رسالة SOAP:

  • أولاً، تتطلب رسالة طلب SOAP محددة. يتضمن ذلك تحديد العملية التي تريد الاتصال بها على خدمة الويب والبيانات التي تريد إرسالها، كل ذلك بتنسيق XML.
  • يمكنك العثور على العديد من الأدوات والموارد المتاحة لمساعدتك في تعريف رسالة SOAP، مثل ملف WSDL (لغة وصف خدمات الويب) المقدمة من خدمة الويب أو أدوات عبر الإنترنت لإنشاء رسائل SOAP.

2. بناء أمر cURL:

  • بعد ذلك، قم ببناء أمر cURL يحدد تفاصيل طلب HTTP الذي يحمل رسالة SOAP. يتضمن ذلك استخدام خيارات cURL المختلفة لتحديد:
    URL: عنوان نقطة نهاية خدمة الويب التي تريد الوصول إليها.
    طريقة: عادة ما يكون أسلوب HTTP مضبوطًا على "POST" حيث يتم عادة إرسال رسائل SOAP باستخدام طريقة POST.
    العناوين: تحتاج إلى عناوين محددة للتواصل بين SOAP، مثل "Content-Type: text/xml; charset=utf-8" للإشارة إلى تنسيق الرسالة وتشفير الحروف.
  • البيانات: سيتم تضمين محتوى رسالة SOAP الفعلي في جسم الطلب باستخدام خيار "-d" مع سلسلة الرسالة أو ملف يحتوي على الرسالة.

3. إرسال الطلب واستلام استجابة:

  • بمجرد أن يكون لديك أمر cURL الكامل، يمكنك تنفيذ ذلك في الطرفية الخاصة بك. سيؤدي ذلك إلى إرسال طلب HTTP المصنوع الذي يحتوي على رسالة SOAP إلى خدمة الويب.
  • ستقوم خدمة الويب بمعالجة الطلب وإرجاع استجابة، عادةً بتنسيق XML.

4. المعالجة اللاحقة للاستجابة:

  • يمكنك تحليل الاستجابة XML لاستخراج المعلومات ذات الصلة التي تم إرجاعها من قبل خدمة الويب. قد يتطلب هذا استخدام أدوات أو مكتبات اعتمادًا على لغة البرمجة المستخدمة.

كيفية استدعاء واجهة برمجة التطبيقات SOAP باستخدام cURL

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

نموذج رسالة SOAP:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://www.example.com/webservice">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:getGreeting>
         <ws:name>جون دو</ws:name>
      </ws:getGreeting>
   </soapenv:Body>
</soapenv:Envelope>
هل يمكنك التخمين ماذا تطلب الرسالة من خدمة الويب؟

الخطوة 2: جهز أمر cURL الخاص بك في الطرفية. مشابهة للخطوة السابقة، يمكنك إلقاء نظرة على نموذج الكود.

نموذج أمر cURL:

curl -X POST \
-H "Content-Type: text/xml; charset=utf-8" \
-H "SOAPAction: http://www.example.com/webservice/getGreeting" \
-d @soap_request.xml "https://dummy.webservice.com/path/to/service"

شرح أمر cURL:

  • -X POST: يحدد طريقة طلب HTTP كـ POST.
  • -H "Content-Type: text/xml; charset=utf-8" يحدد رأس نوع المحتوى بالإشارة إلى بيانات XML مع ترميز UTF-8.
  • -H "SOAPAction: http://www.example.com/webservice/getGreeting" يحدد رأس SOAPAction عن طريق تحديد العملية المستهدفة.
  • -d @soap_request.xml يقرأ محتوى رسالة SOAP من ملف يسمى "soap_request.xml".
  • "https://dummy.webservice.com/path/to/service" يتم استبداله بعنوان URL الفعلي لنقطة نهاية خدمة الويب.

تطبيقات الحياة الواقعية لـ SOAP cURLs

1. تكامل الأنظمة القديمة: تم استخدام SOAP في كثير من الأحيان في تطبيقات المؤسسات القديمة. إذا كنت بحاجة إلى التفاعل مع مثل هذه الأنظمة القديمة التي لم يتم ترحيلها إلى بروتوكولات أحدث، يمكن أن يوفر cURL وسيلة لصياغة يدويًا وإرسال طلبات SOAP للتبادل البيانات.

2. اختبار وتصحيح خدمات ويب SOAP: يمكن للمطورين استخدام cURL لإرسال طلبات SOAP محددة مباشرة وتحليل الاستجابات لحل المشكلات مع خدمات ويب SOAP. يسمح ذلك بالتحكم الدقيق في الطلب ويساعد على تحديد المشكلات المحتملة.

3. سكريبتات مخصصة وأتمتة: يمكن دمج cURL في السكريبتات والبرامج لأتمتة المهام المتعلقة بالتواصل عبر SOAP. يمكن أن يكون ذلك مفيدًا في سيناريوهات مثل جلب البيانات بشكل دوري من خدمة SOAP أو تفعيل إجراءات معينة استنادًا إلى رسائل SOAP المستلمة.

Apidog - يجعل اختبار SOAP أسهل

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

api design apidog test build
وظائف Apidog التي يمكن للمستخدمين الاستمتاع بها
زر

يدعم Apidog استيراد ملفات WSDL بحيث يمكنك عرض خدمات الويب المستندة إلى SOAP. من ناحية أخرى، يمكنك أيضًا إنشاء أوامر cURL باستخدام توليد كود لغة عميل Apidog، بحيث لا تضطر إلى التخمين ما إذا كنت على حق أو خطأ!

استيراد ملفات WSDL لعرض خدمات الويب المستندة إلى SOAP على Apidog

import wsdl file apidog
استيراد ملف WSDL على Apidog

أولاً، اضغط على زر Settings الموجود على الجانب الأيسر من شريط الأدوات العمودي. ثم، ابحث عن Import Data تحت قسم Data Management. أخيرًا، اختر WSDL لاستيراد ملفات WSDL إلى Apidog.

تحرير ملفات WSDL على Apidog

edit wsdl file apidog
تحرير ملف WSDL باستخدام Apidog

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

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

استيراد cURL إلى Apidog

يدعم Apidog استيراد أكواد سطر أوامر cURL لأولئك الذين لديهم ذلك جاهزًا.

start curl import apidog
تهيئة استيراد cURL على Apidog

في قسم APIs، ابحث عن زر بنفسجي + الموجود حول الزاوية العليا اليسرى من نافذة Apidog. ثم اختر استيراد cURL. إذا لم تتمكن من العثور على الزر المذكور، يمكنك استخدام الاختصار Ctrl + I.

paste curl command apidog
الصق أمر cURL الخاص بك في الحقل الفارغ

هنا، يمكنك لصق أمر cURL الخاص بك. بمجرد أن تفعل ذلك، اضغط على Enter على لوحة المفاتيح الخاصة بك أو زر OK لعرض أمر cURL الخاص بك.

curl code body edit apidog
قرّر إذا كنت بحاجة إلى تعديل أي شيء آخر

إذا كان ناجحًا، يمكنك عرض أمر cURL كجزء من جسم JSON، كما هو موضح في الصورة أعلاه. هنا، يمكنك إجراء التعديلات أو التغييرات، متى وأينما كان ذلك مطلوبًا.

توليد كود أمر cURL باستخدام Apidog

curl comannd code generation apidog
توليد كود سطر أوامر cURL

لبدء توليد كود cURL، ابحث واضغط على زر </> الموجود في الزاوية العليا اليمنى من نافذة Apidog. ثم، اختر توليد كود عميل.

curl code generate apidog
اختر كود سطر أوامر cURL باستخدام Apidog

ستظهر نافذة منبثقة تطلب منك اختيار أي كود عميل ترغب في توليده. هنا، اختر Shell و cURL. بمجرد أن تفعل ذلك، يمكنك نسخ الكود ولصقه في الطرفية الخاصة بك. ومع ذلك، تأكد من تعديل ذلك ليتناسب مع احتياجاتك.

الخاتمة

تعد SOAP cURLs تقنيتين يمكن أن تعملان جنبًا إلى جنب، حيث يمكن استخدام أوامر cURL للتواصل مع خدمات الويب المستندة إلى SOAP. ومع ذلك، تجدر الإشارة إلى أن استخدامهما يتراجع بسبب شعبيتهما أكثر من الأنماط المعمارية الأخرى مثل REST.

Apidog هي منصة كاملة لتطوير واجهات برمجة التطبيقات تعزز التطوير القائم على التصميم لواجهات برمجة التطبيقات. مع Apidog، يمكنك بسهولة تعديل وتصميم واجهات برمجة التطبيقات بصريًا بفضل واجهتها البسيطة والبديهية. وعلاوة على ذلك، هي خيار قوي لأي مطورين مهتمين بتجربة منصة جديدة حيث يدعم Apidog استيراد أنواع ملفات متنوعة، بما في ذلك Postman و WSDL والعديد غيرها.

ما هي مزايا استخدام cURL بدلاً من المتصفح: دليل شاملوجهة نظر

ما هي مزايا استخدام cURL بدلاً من المتصفح: دليل شامل

cURL يتفوق في أتمتة المهام على الويب، موفراً مرونة وكفاءة لاحتياجات مطوري نقل البيانات.

@apidog

فبراير 29, 2024

ما هو التصميم أولاً (مع الأنماط/المبادئ/أفضل الممارسات)وجهة نظر

ما هو التصميم أولاً (مع الأنماط/المبادئ/أفضل الممارسات)

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

@apidog

فبراير 29, 2024

كيفية اختيار نوع محتوى استجابة واجهة برمجة التطبيقات المناسب لمشروعكوجهة نظر

كيفية اختيار نوع محتوى استجابة واجهة برمجة التطبيقات المناسب لمشروعك

تعرف على مزايا وعيوب أنواع محتوى استجابة API المختلفة مثل JSON وXML وHTML وغيرها، وكيفية اختيار الأنسب لمشروعك.

@apidog

فبراير 29, 2024