بضائع

ما هو الويب هوك وكيف تستخدمه؟

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

يسمح استخدام خطافات الويب لتطبيقات الويب بالاتصال تلقائيًا بتطبيقات الويب الأخرى.

على عكس الأنظمة التقليدية حيث يحتفظ نظام (موضوع) بالاستقصاء عن نظام آخر (مراقب) لبعض البيانات ، تسمح خطافات الويب للمراقب بدفع البيانات تلقائيًا إلى نظام الموضوع كلما حدث حدث.

هذا يلغي الحاجة إلى المراقبة المستمرة من قبل الموضوع. تعمل Webhooks بالكامل على الإنترنت وبالتالي يجب أن تتم جميع الاتصالات بين الأنظمة في شكل رسائل HTTP.

استخدام الخطافات على الويب

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

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

نظم الاقتراع مقابل الأنظمة القائمة على الويب هوك

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

سير عمل Webhook

لتنفيذ خطافات الويب الواردة على تطبيقك ، تحتاج إلى تنفيذ الخطوات الأساسية التالية:

  • كشف نقطة نهاية API على خادم التطبيق الخاص بك الذي يقبل ويعالج مكالمات HTTP POST
  • توفير الوصول إلى نقطة النهاية هذه لمستخدمي webhook المحتملين. ستستدعي نقطة نهاية API تطبيق مصدر البيانات كلما تم استيفاء الشروط ذات الصلة.
  • قم بمعالجة بيانات POST وإرجاع استجابة إلى بادئ استدعاء webhook للإشارة إلى الحالة. هذه الخطوة قد تكون أو لا تكون موجودة.

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

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

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

تميل Webhooks إلى أن تكون حلولًا أفضل إذا كانت النقاط التالية أكثر صلة بالنظام المُطبَّق:

  • إذا تم تحديث البيانات بشكل متكرر على الخادم ، تميل خطافات الويب إلى أن تكون حلولًا أفضل حيث يتم التخلص من مكالمات واجهة برمجة التطبيقات غير الضرورية من العميل إلى الخادم. وفقًا لموقع resthooks.com ، فإن 98,5٪ من استطلاعات API تذهب سدى.
  • تتيح خطاطيف الويب حلولاً أفضل للأنظمة التي تتطلب تحديثات بيانات شبه فورية. يتم تشغيل استطلاعات API عادةً على فترات زمنية محددة والتي قد تمنع تحديث البيانات الحية. باستخدام webhooks ، يتم إرسال التحديثات من الخادم إلى العميل بمجرد تشغيل الويب هوك.

يجب تفضيل استخدام واجهة برمجة التطبيقات على خطافات الويب في بعض المواقف الأخرى.

أشياء للإعتبار

الأشياء المهمة التي يجب مراعاتها عند استخدام واجهات برمجة التطبيقات على Webhooks هي:

  • يسمح استخدام واجهة برمجة التطبيقات (API) بمزيد من التخصيص لوقت الاستقصاء عن البيانات من الخادم وأيضًا مقدار البيانات المراد استطلاعها من الخادم. يتم التحكم في مقدار البيانات المراد استقصائها من خلال حجم استطلاع API. باستخدام webhooks ، يقرر الخادم بشكل عام البيانات ووقت إرسالها.
  • بالنسبة للأنظمة التي تحتوي على بيانات متغيرة للغاية (مثل أنظمة الوقت الفعلي وأنظمة إنترنت الأشياء وما إلى ذلك) ، قد يكون الاقتراع المستند إلى API خيارًا أفضل نظرًا لأن هناك احتمالية كبيرة للاستجابات القابلة للاستخدام لكل استدعاء لواجهة برمجة التطبيقات.
  • من الممكن أن يتجاهل العميل البيانات المرسلة من الخادم ، عبر خطاف ويب ، تمامًا في حالة عدم اتصال نقاط نهاية REST. في حالة عدم وجود آلية للخادم لإعادة محاولة مثل هذه الدفعات الفاشلة ، يتم فقد تحديثات البيانات تمامًا.

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

Ercole Palmeri

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

المقالات الأخيرة

يوقع الناشرون وOpenAI اتفاقيات لتنظيم تدفق المعلومات التي تتم معالجتها بواسطة الذكاء الاصطناعي

أعلنت صحيفة فاينانشيال تايمز يوم الاثنين الماضي عن صفقة مع OpenAI. "فاينانشيال تايمز" ترخص صحافتها ذات المستوى العالمي...

أبريل 30 2024

المدفوعات عبر الإنترنت: إليك كيف تجعلك خدمات البث تدفع إلى الأبد

يدفع الملايين من الأشخاص مقابل خدمات البث، ويدفعون رسوم الاشتراك الشهرية. من الشائع أنك…

أبريل 29 2024

يتميز Veeam بالدعم الأكثر شمولاً لبرامج الفدية، بدءًا من الحماية وحتى الاستجابة والاسترداد

سوف تستمر شركة Coveware by Veeam في تقديم خدمات الاستجابة لحوادث الابتزاز السيبراني. ستوفر Coveware إمكانات الطب الشرعي والمعالجة...

أبريل 23 2024

الثورة الخضراء والرقمية: كيف تعمل الصيانة التنبؤية على تغيير صناعة النفط والغاز

تُحدث الصيانة التنبؤية ثورة في قطاع النفط والغاز، من خلال اتباع نهج مبتكر واستباقي لإدارة المحطات.

أبريل 22 2024

اقرأ الابتكار بلغتك

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

تابعنا