عدم تطابق التوقيع
السبب الأكثر شيوعًا هو توقيع JSON الذي تم تحليله بدلاً من النص الأولي الدقيق، أو استخدام طابع زمني مختلف عن رأس الطلب.
أداة اختبار Webhook
عدّل نصًا تجريبيًا وأنشئ توقيع HMAC-SHA256 وطلب cURL للتحقق من منطق الاستقبال في بيئة الاختبار.
أدخل العنوان ومفتاح الاختبار والطابع الزمني.
يُحسب التوقيع في المتصفح. استخدم مفتاحًا تجريبيًا.
طابع Unix بالمللي ثانية، كما في ترويسات BoltUtil.
يُحدّث التوقيع وcURL عند تعديل JSON.
أدخل مفتاحًا وطابعًا زمنيًا وJSON صالحًا.
يُحسب من الطابع الزمني والنص الأصلي ومفتاح الاختبار.
أدخل عنوانًا ومفتاحًا وطابعًا زمنيًا وJSON صالحًا.مثال لإشعار طلب USDC ويمكن تغييره إلى USDT. الطلب والعناوين ومعرّف المعاملة أمثلة وليست إثباتًا للدفع.
لا ترسل الأداة طلبات تلقائيًا. شغّل cURL يدويًا في بيئة الاختبار.
التحقق من التوقيع
تحقق بالقاعدة نفسها، واحفظ الحدث ثم حدّث الطلب.
دليل التحقق من التوقيعHMAC_SHA256(timestamp + "." + rawBody, secret)استخدم الطابع الزمني بالمللي ثانية من الرأس والنص الأولي الدقيق لحساب HMAC قبل تحليل JSON. تؤثر المسافات البيضاء وفواصل الأسطر وترتيب الحقول على التوقيع.
قارن التوقيع المستلم مع مساعد ثابت الوقت يوفره وقت تشغيل لغتك.
لا يتم إرجاع النجاح إلا بعد تسجيل الحدث أو وضعه في قائمة انتظار داخلية متينة.
استكشاف أخطاء Webhook وإصلاحها
تحقق من النص الأصلي والسر وحالة الاستجابة لتحديد المشكلة.
السبب الأكثر شيوعًا هو توقيع JSON الذي تم تحليله بدلاً من النص الأولي الدقيق، أو استخدام طابع زمني مختلف عن رأس الطلب.
استخدم سر الرد التلقائي على الويب الذي تم تكوينه لنقطة نهاية التاجر. يجب التعامل مع مفاتيح واجهة برمجة التطبيقات (API) وأسرار خطاف الويب كبيانات اعتماد مختلفة.
يمكن للبرامج الوسيطة JSON إعادة ترتيب الحمولات أو إعادة تنسيقها. التقط النص الخام قبل التحليل عند التحقق من توقيعات HMAC.
الاستجابة خارج 2xx تعني فشل التسليم. إعادة المحاولة تعتمد على نوع الإشعار وحالة HTTP والسياسة.
أزل التكرار بمعرّف الطلب والحالة أو معرّف حدث فريد. قد تحتوي المعاملة على عدة تحويلات.
قم بإرجاع HTTP 2xx فقط بعد كتابة الحدث إلى قاعدة البيانات أو قائمة الانتظار الخاصة بك. وإلا فقد يؤدي حدوث عطل إلى فقدان إشعار الدفع المكتمل.
FAQ
التحقق من التوقيع، والردود، وعمليات التسليم المكررة.
تحقق من نص الطلب الأولي الدقيق ورأس الطابع الزمني وسر خطاف الويب الذي تم تكوينه. عادةً ما يؤدي توقيع JSON الذي تم تحليله أو الجسم المعاد تنسيقه إلى إنتاج HMAC مختلف.
لا. يعتمد BoltUtil على حالة HTTP؛ تعني 2xx نجاح الاستلام. تحقق من الحدث واحفظه أولًا.
استخدم قيدًا فريدًا أو عملية ذرية بمعرّف الطلب والحالة أو الحدث. معرّف المعاملة وحده لا يكفي.
أعد 2xx بعد التحقق والحفظ. عند الفشل أعد خطأ مناسبًا؛ إعادة المحاولة تعتمد على النوع والسياسة.