كيف تعمل Webhooks
- يقع حدث في Rntor (تم إنشاء حجز، تم تحديث عميل، إلخ)
- تضع Rntor الحدث في قائمة انتظار صندوق الصادر لـ webhook
- تسلّم Svix الحمولة إلى نقطة النهاية الخاصة بك
- يعالج تطبيقك الحدث ويستجيب بـ
200 OK
بنية التسليم التحتية
تستخدم Rntor Svix لتسليم webhook موثوق، مما يوفر:- إعادة المحاولات التلقائية مع التراجع الأسي
- التحقق من التوقيع للأمان
- سجلات التسليم لتصحيح الأخطاء
- إدارة نقاط النهاية عبر بوابة خدمة ذاتية
إعداد Webhooks
1. الوصول إلى بوابة Webhook
انتقل إلى Settings → Developers → Webhooks في لوحة تحكم Rntor الخاصة بك. ستُحمَّل بوابة Svix App.2. إضافة نقطة نهاية
انقر على Add Endpoint وقم بتكوين:| الحقل | الوصف |
|---|---|
| URL | عنوان URL لنقطة نهاية HTTPS الخاصة بك |
| Description | وصف اختياري لنقطة النهاية هذه |
| Event Types | الأحداث التي تريد استقبالها (أو الكل) |
3. اختيار الأحداث
اختر الأحداث التي تريد الاشتراك فيها:استقبال Webhooks
تتلقى نقطة النهاية الخاصة بك طلباتPOST تحتوي على:
الرؤوس
| الرأس | الوصف |
|---|---|
Content-Type | application/json |
svix-id | معرّف الرسالة الفريد |
svix-timestamp | الطابع الزمني Unix لمحاولة التسليم |
svix-signature | التوقيع للتحقق |
الجسم
الاستجابة لـ Webhooks
يجب على نقطة النهاية الخاصة بك:- التحقق من التوقيع (انظر الأمان)
- معالجة الحدث (تحديث قاعدة البيانات، تشغيل سير العمل)
- الاستجابة برمز حالة
200-299
Example Handler
سياسة إعادة المحاولة
تُعاد محاولة عمليات التسليم الفاشلة مع التراجع الأسي:| المحاولة | التأخير |
|---|---|
| إعادة المحاولة الأولى | 5 ثواني |
| إعادة المحاولة الثانية | 5 دقائق |
| إعادة المحاولة الثالثة | 30 دقيقة |
| إعادة المحاولة الرابعة | ساعتان |
| إعادة المحاولة الخامسة | 8 ساعات |
| إعادة المحاولة السادسة | يوم واحد |
اختبار Webhooks
التطوير المحلي
استخدم خدمة نفق لكشف خادمك المحلي:ngrok
أحداث الاختبار
تتيح لك بوابة Svix إرسال أحداث اختبار:- انتقل إلى نقطة النهاية الخاصة بك في البوابة
- انقر على Send Test Event
- اختر نوع الحدث
- انقر على Send
عرض سجلات التسليم
صحّح عمليات التسليم الفاشلة عبر عرض السجلات في بوابة Svix:- الطابع الزمني للتسليم
- رمز حالة الاستجابة
- جسم الاستجابة
- محاولات إعادة المحاولة
أفضل الممارسات
عالج بشكل غير متزامن
عالج بشكل غير متزامن
ضع أحداث webhook في قائمة انتظار للمعالجة في الخلفية. أعد
200 OK فوراً، ثم عالج الحدث بشكل غير متزامن لتجنب انتهاء المهلة.عالج التكرارات
عالج التكرارات
قد يتم تسليم Webhooks عدة مرات. استخدم
event_id في _meta لإزالة تكرار الأحداث التي عالجتها بالفعل.راقب صحة نقطة النهاية
راقب صحة نقطة النهاية
أعد إعداد تنبيهات لعمليات تسليم webhook الفاشلة. تحقق من بوابة Svix بانتظام بحثاً عن مشكلات التسليم.
تحقق من صحة الحمولات
تحقق من صحة الحمولات
لا تثق ببيانات webhook بشكل أعمى. تحقق من وجود الكيانات المشار إليها (الحجوزات والعملاء) قبل المعالجة.
الخطوات التالية
التحقق من طلبات webhooks
طبّق التحقق من التوقيع
أنواع أحداث webhook
تصفّح جميع أحداث webhook المتاحة