ما هو webhook مقابل API

مسرد المصطلحات

ما هو Webhook، وكيف يعمل؟

يعد webhook آلية لبدء إجراء تلقائيًا في تطبيق برمجي واحد عند حدوث حدث معين في تطبيق آخر. إنها طريقة للتطبيقات للتواصل مع بعضها البعض في الوقت الفعلي.

فيما يلي كيفية عملها عادةً:

  1. إعداد الويب هوك: في التطبيق الذي سيرسل الأحداث، مثل الخادم أو تطبيق الويب، يمكنك تكوين عنوان URL الخاص بـ webhook. يوفر تطبيق الاستلام عنوان URL هذا ويعمل كنقطة نهاية لإرسال بيانات الحدث.
  2. تشغيل حدث: عندما يحدث حدث محدد مسبقًا في التطبيق المرسل، مثل تسجيل مستخدم جديد أو تحميل ملف أو تأكيد الدفع، يجمع التطبيق البيانات ذات الصلة بالحدث.
  3. إرسال البيانات: يقوم التطبيق المرسل بتجميع بيانات الحدث في حمولة ويطلب HTTP POST إلى عنوان URL الخاص بـ webhook.
  4. استلام كتاب الويب: يستمع التطبيق المستلم للطلبات الواردة على عنوان URL المحدد على webhook. عندما تتلقى طلبًا، فإنها تعالج الحمولة وتتخذ الإجراءات المناسبة استنادًا إلى بيانات الحدث. قد يتضمن ذلك تحديث قاعدة بيانات أو إرسال إشعارات أو تشغيل المزيد من العمليات.
  5. معالجة الاستجابات (اختياري): بعد معالجة حمولة webhook، قد يرسل التطبيق المستلم اختياريًا ردًا إلى التطبيق المرسل للإقرار بالاستلام أو تقديم أي ملاحظات ضرورية.

تُستخدم Webhooks بشكل شائع في سيناريوهات مختلفة، مثل دمج الخدمات المختلفة وأتمتة سير العمل وبناء اتصال في الوقت الفعلي بين الأنظمة. إنها توفر طريقة للتطبيقات للتفاعل مع الأحداث على الفور دون إجراء استطلاعات مستمرة أو تدخل يدوي.

كيف يعمل الويب هوك؟

يعد webhook طريقة لتزويد التطبيقات الأخرى بمعلومات في الوقت الفعلي. فيما يلي نظرة عامة أساسية عن كيفية عملها:

  1. الإعداد: تبدأ بإعداد webhook في أحد التطبيقات. يتضمن هذا عادةً توفير عنوان URL حيث يجب أن يرسل التطبيق البيانات.
  2. وقوع الحدث: يراقب التطبيق الذي يستضيف webhook أحداثًا أو محفزات معينة. عند حدوث أحد هذه الأحداث، مثل تقديم طلب جديد أو تلقي رسالة أو ملف يتم تحديثه، يبدأ التطبيق طلبًا إلى عنوان URL الذي قدمته لخطاف الويب.
  3. طلب HTTP: يرسل التطبيق طلب HTTP POST إلى عنوان URL الخاص بالويب هوك. يحتوي هذا الطلب على معلومات ذات صلة بالحدث الذي وقع، والتي يمكن تنظيمها بتنسيقات مختلفة، مثل JSON أو XML.
  4. معالجة الطلب: يتلقى الخادم الذي يستضيف webhook طلب HTTP. ثم يقوم بمعالجة البيانات في الطلب وفقًا للمنطق المحدد في تطبيق webhook. قد يتضمن ذلك تحديث قاعدة بيانات وإرسال إشعارات وبدء الإجراءات وما إلى ذلك.
  5. الاستجابة: بعد معالجة الطلب، يستجيب الخادم عادةً للتطبيق الذي قام بتشغيل webhook. يمكن أن تشير هذه الاستجابة إلى النجاح أو الفشل أو أي معلومات أخرى ذات صلة.
  6. الإجراء: اعتمادًا على الاستجابة المتلقاة، قد يتخذ التطبيق المشغل مزيدًا من الإجراءات. على سبيل المثال، إذا كان طلب webhook ناجحًا، فقد يستمر بخطوات إضافية. إذا فشلت، فقد تقوم بطريقة أو بأخرى بإعادة محاولة الطلب أو معالجة الخطأ.

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

ما هو webhook مقابل API؟

يعد كل من webhook وواجهة برمجة التطبيقات (API) آليتين تستخدمان للتواصل بين أنظمة البرامج المختلفة، ولكنهما يخدمان أغراضًا مختلفة ويعملان بطرق مختلفة.

ويب هوك:

  1. آلية الدفع: Webhooks هي آلية دفع. إنها تسمح لأحد التطبيقات بإخطار تطبيق آخر في الوقت الفعلي عند وقوع حدث معين.
  2. يحركها الحدث: تعتمد Webhooks على الأحداث. تؤدي أحداث أو إجراءات محددة إلى تشغيلها، مثل تسجيل مستخدم جديد أو ملف تم تحميله أو تغيير حالة النظام.
  3. الطلبات الصادرة: عند وقوع حدث، يرسل التطبيق الذي يستضيف webhook طلب HTTP POST إلى عنوان URL الذي يوفره التطبيق المتلقي. يحتوي هذا الطلب على بيانات ذات صلة بالحدث.
  4. الوقت الحقيقي: توفر Webhooks تحديثات في الوقت الفعلي حيث تقوم بإخطار التطبيق المستلم عند وقوع حدث.
  5. اتصال أحادي الاتجاه: تسهل Webhooks الاتصال أحادي الاتجاه بين المرسل والمستقبل. يقوم المرسل بإعلام المتلقي، ولكن المتلقي لا يستجيب بالضرورة للمرسل.

API (واجهة برمجة التطبيقات):

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

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

العودة إلى المسرد

ابدأ مع Ampcontrol

Ampcontrol Logo
345 شارع 7
91056 Erlangen
Germany
C. de Eloy Gonzalo 27
28010 Madrid
Spain
345 7th Avenue
New York, NY 10001
United States
حقوق الطبع والنشر © 0000 شركة أمبكونترول تكنولوجيز، جميع الحقوق محفوظة