أمثلة على واجهة برمجة التطبيقات SOAP (مع مقارنة API REST)

تعرف على واجهات برمجة التطبيقات SOAP لمشاريع تطوير البرمجيات الخاصة بك!

Amir Hassan

Amir Hassan

20 أغسطس 2025

أمثلة على واجهة برمجة التطبيقات SOAP (مع مقارنة API REST)

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

SOAP في سياق واجهات برمجة التطبيقات (APIs) ليست عطرية ولا هي ما تستخدمه لتنظيف جسمك. SOAP هو بروتوكول قد مكن المطورين في جميع أنحاء العالم من استخدام الخدمات السحابية، أو ما نعرفه الآن عمومًا باسم واجهات برمجة التطبيقات.

ستصف هذه المقالة ما هي واجهات برمجة التطبيقات SOAP، مما تتكون، وخصائص أخرى تعرف وتفصل واجهات برمجة التطبيقات SOAP عن أنواع مختلفة من واجهات برمجة التطبيقات، مثل واجهات برمجة التطبيقات REST.

ما هو SOAP؟

SOAP هو اختصار لـ بروتوكول الوصول إلى الكائنات البسيطة، وهو نظام محدد للتواصل وتبادل المعلومات في الخدمات السحابية، والتطبيقات، والأنظمة.

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

ما الذي يميز واجهات برمجة التطبيقات SOAP؟

توجد خصائص تمتلكها واجهات برمجة التطبيقات SOAP تجعلها نوعًا مختلفًا تمامًا من واجهات برمجة التطبيقات. إليك الاختلافات المهمة التي تظهرها واجهات برمجة التطبيقات SOAP عن الأنواع الأخرى من بروتوكولات واجهات برمجة التطبيقات.

بروتوكول قائم على XML

XML (لغة الترميز القابلة للتوسع) هي لغة قابلة للقراءة للبشر والآلات. تعتمد واجهات برمجة التطبيقات SOAP على هذه اللغة لتغليف البيانات.

هيكل الرسالة

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

المكونات الأربعة الرئيسية لواجهة برمجة تطبيقات SOAP هي:

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

امتثال ACID

ACID (الذراتية، الاتساق، العزل، والمتانة) هي خاصية قد تمتلكها واجهة برمجة التطبيقات. عندما يقال إن واجهة برمجة التطبيقات SOAP لديها امتثال ACID، يمكنك توقع أن تحتوي معاملات البيانات على هذه الخصائص:

الذراتية - يتم التعامل مع تبادل البيانات المتضمن في واجهات برمجة التطبيقات SOAP كوحدة واحدة، حيث يتم إرسال الحزمة إما بالكامل أو لا على الإطلاق. إذا فشلت المعاملة، فإن حزمة البيانات تُرجع بالكامل، مما يجعل قاعدة البيانات كما هي للحفاظ على اتساق كلا النظامين.

الاتساق - كلما حدث أي فشل أثناء معاملة البيانات، يتم إعادة كل شيء إلى حالته الأولية لمنع الضرر في قواعد بيانات النظامين.

العزل - يتم اعتبار طلب واحدة من واجهات برمجة التطبيقات SOAP بشكل منفصل عن الآخر، حيث لا يتم تنفيذها مع عمليات أخرى. يتم ذلك لضمان الحفاظ على نزاهة قاعدة البيانات.

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

التمدد

أصبح هيكل SOAP بروتوكولًا مستخدمًا على نطاق واسع لحل العديد من المشكلات الشائعة التي يواجهها المطورون. منذ ذلك الحين، قام المطورون أيضًا بتمديد واجهات برمجة التطبيقات SOAP من خلال مجموعة من المواصفات المعروفة باسم WS-* (مواصفات الخدمات السحابية). تضيف هذه المواصفات معايير إضافية لمختلف جوانب الخدمات السحابية، مثل المعاملات (WS-AtomicTransaction)، والعنوان (WS-Addressing).

SOAP مقابل REST - الاختلافات

قد يواجه العديد من المطورين الجدد ازدحامًا بسبب تنوع أنواع واجهات برمجة التطبيقات المقدمة لهم. أحد أنواع واجهات برمجة التطبيقات الشائعة جدًا هو واجهة برمجة التطبيقات REST (نقل الحالة التمثيلية)، حيث أن REST هو نمط معماري لإنشاء الخدمات السحابية.

من المفيد أن نفهم المزيد عن ما هي واجهة برمجة التطبيقات REST! من يدري، ربما يومًا ما ستصمم واجهة برمجة تطبيقات مستخدمة على نطاق واسع يقدرها المطورون!

اختلافات اللغة

SOAP - تستخدم معاملات البيانات مع واجهات برمجة التطبيقات SOAP تنسيق الرسالة XML، مع هيكل ثابت لإرسال الطلبات واستقبال الردود.

REST - يمكن أن تكون معاملات البيانات مع واجهات برمجة التطبيقات REST في تنسيقات رسائل بيانات مختلفة، مثل XML، JSON، وHTML، مما يتيح مزيدًا من المرونة.

معالجة الأخطاء

SOAP - تحتوي واجهات برمجة التطبيقات SOAP على حالات أخطاء محددة، وهي جزء من عنصر الخطأ الخاص بها.

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

استخدام طرق HTTP

SOAP - تعتمد واجهات برمجة التطبيقات SOAP على طرق HTTP POST لجميع أنواع العمليات.

REST - تستخدم واجهات برمجة التطبيقات REST طرق HTTP الأخرى مثل GET، POST، PUT، وDELETE، اعتمادًا على السيناريو الذي يحتاجها.

أمثلة على واجهات برمجة التطبيقات SOAP الشهيرة

واجهة برمجة تطبيقات خدمات أمازون السحابية (AWS)

واجهة برمجة تطبيقات خدمات أمازون السحابية
واجهة برمجة تطبيقات خدمات أمازون السحابية

استخدمت AWS في الأصل SOAP كبروتوكول أساسي لخدماتها السحابية ولكنها قدمت بدائل تعتمد على REST. ومع ذلك، لا تزال واجهات برمجة التطبيقات SOAP مدعومة لبعض الخدمات. على سبيل المثال، كانت خدمة قائمة الانتظار البسيطة من أمازون (SQS) تستخدم في البداية SOAP.

واجهة برمجة تطبيقات Microsoft SharePoint

Microsoft SharePoint هي منصة تعاونية تعتمد على SOAP لواجهتها البرمجية. استخدم المطورون طلبات SOAP للتفاعل مع بيانات SharePoint والخدمات.

واجهة برمجة تطبيقات Salesforce

صفحة واجهة برمجة تطبيقات Salesforce
صفحة الهبوط لواجهة برمجة تطبيقات Salesforce

Salesforce، منصة إدارة علاقات العملاء الشهيرة، تقدم واجهة برمجة تطبيقات SOAP التي تتيح للمطورين التكامل والتفاعل مع بيانات Salesforce.

واجهة برمجة تطبيقات Java للخدمات السحابية XML (JAX-WS)

JAX-WS هي واجهة برمجة تطبيقات قائمة على Java لإنشاء خدمات سحابية تعتمد على SOAP. كانت جزءًا من منصة Java EE (إصدار المؤسسات) وسمحت للمطورين بإنشاء واستهلاك خدمات سحابية تستخدم SOAP في Java.

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

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

كل ما عليك فعله هو تنزيل التطبيق، إنشاء حساب، وبدء مشروع جديد لبدء استيراد واجهات برمجة التطبيقات SOAP!

زر

بمجرد أن تكون قد أنشأت مشروعًا جديدًا، ابدأ في استيراد واجهات برمجة التطبيقات SOAP الخاصة بك باتباع هذه الخطوات:

استيراد ملف WSDL لواجهة برمجة التطبيقات SOAP Apidog
استيراد ملف WSDL لواجهة برمجة التطبيقات SOAP على Apidog

السهم 1 - حدد زر "الإعدادات" في الشريط الجانبي العمودي.

السهم 2 - حدد علامة التبويب "استيراد البيانات" تحت "إدارة البيانات"

السهم 3 - حدد زر "WSDL" تحت "استيراد البيانات".

تحرير ملف WSDL لواجهة برمجة التطبيقات SOAP Apidog
تحرير واجهة برمجة التطبيقات SOAP على Apidog

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

السهم 1 - حدد طلب واجهة برمجة التطبيقات SOAP المستورد (قم بتسميته بشيء مختلف عن الطلبات الأخرى الموجودة التي قمت بها من قبل).

السهم 2 - حدد قسم "الجسم".

السهم 3 - حدد القسم الصغير "xml".

السهم 4 - ابدأ في تحرير رسالة واجهة برمجة التطبيقات SOAP الخاصة بك.

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

يحتاج كل مطور خدمات ويب إلى اختبار ما إذا كان منتجه يعمل بعد إجراء تغييرات. ولحسن الحظ، يسمح Apidog للمطورين بإنشاء سيناريوهات اختبار لواجهات برمجة التطبيقات الخاصة بهم. إليك دليل خطوة بخطوة.

تهيئة سيناريو اختبار جديد على Apidog
تهيئة سيناريو اختبار جديد على Apidog

أولاً، حدد زر "الاختبار" المشار إليه بالسهم 1 في الصورة أعلاه. يجب أن ترى بعد ذلك "سيناريو اختبار جديد"، المشار إليه بالسهم 2.

وصف سيناريو اختبار جديد Apidog
املأ الوصف للسيناريو اختبار الجديد

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

إضافة خطوة(خطوات) إلى سيناريو الاختبار
إضافة خطوة(خطوات) إلى سيناريو الاختبار

أضف خطوة (أو المزيد من الخطوات) إلى سيناريوهات الاختبار الخاصة بك من خلال النقر على قسم "إضافة خطوة". يجب أن تكون قادرًا على رؤية الصورة أدناه.

اختر الاستيراد من واجهة برمجة التطبيقات SOAP Apidog
حدد "الاستيراد من واجهات برمجة التطبيقات"

حدد "الاستيراد من واجهة برمجة التطبيقات" من القائمة المنسدلة.

إضافة واجهة برمجة التطبق خدمات الويب اختبار السيناريو Apidog
أضف جميع واجهات برمجة التطبيقات التي تريد تضمينها في سيناريو الاختبار الخاص بك

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

تحرير بيئة الاختبار بدء سيناريو الاختبار Apidog
حدد البيئة إلى "بيئة الاختبار" واضغط على "تشغيل" لبدء الاختبار

قبل الضغط على زر "تشغيل" لبدء سيناريو الاختبار الخاص بك، تأكد من تغيير بيئة سيناريو الاختبار، والتي يجب أن تكون "بيئة الاختبار"، كما أشار إليه السهم 1.

جرب ذلك، ويمكنك أن ترى ما إذا كانت واجهة برمجة التطبيقات الخاصة بك تلبي جميع متطلباتك!

الخاتمة

لدى REST وSOAP اختلافاتهما وأوجه تشابههما، ومع ذلك، فإن كليهما يتفوق في بعض المواقف، لذا تأكد من أنك مجهز بالمعرفة الصحيحة!

للمزيد من المعلومات حول واجهات برمجة التطبيقات SOAP، تحقق من كيفية استخدام واجهة برمجة التطبيقات Jakarta SOAP وتطبيقها في مشاريعك أو تطبيقاتك!

Explore more

أين يمكن تنزيل Swagger UI باللغة العربية مجانًا

أين يمكن تنزيل Swagger UI باللغة العربية مجانًا

استكشف صعوبة الحصول على واجهة باللغة العربية لـ Swagger UI وتعرف على سبب كون Apidog بديلاً قويًا لمنصة تطوير واجهات برمجة التطبيقات (APIs).

23 أبريل 2025

أين يمكن تحميل Postman بالعربية مجانًا؟ استكشاف الخيارات وبديل Apidog

أين يمكن تحميل Postman بالعربية مجانًا؟ استكشاف الخيارات وبديل Apidog

هل يمكنك تحميل Postman بالعربية مجانًا؟ بينما يفتقر Postman للدعم الأصلي للغة العربية، توجد حلول بديلة. استكشفها واكتشف Apidog، بديل Postman القوي والموحد المصمم لتبسيط سير عمل API بالكامل، بغض النظر عن اللغة.

22 أبريل 2025

للمبتدئين: الاستخدام الأساسي لبرنامج Postman

للمبتدئين: الاستخدام الأساسي لبرنامج Postman

Postman هي أداة أساسية لاختبار واجهات برمجة التطبيقات (API). يمكن أن يُحسن كفاءتك عند تنفيذ استراتيجيات API. في هذه المقالة، سأشرح أساسيات استخدام Postman، لتمكين المستخدمين الجدد من تعلمه بسهولة من خلال هذا الدليل.

25 مارس 2025

ممارسة تصميم API في Apidog

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