وب هوک ها راهی برای دریافت اطلاع از رویدادی در وبلاگ شما هستند.
cache.single{ path: string }cache.templatescache.allوقتی رویدادی اتفاق می افتد، الف POST درخواست به وب هوک ارسال می شود URL. بدن درخواست است JSON شی با ویژگی های زیر را data ویژگی داده رویداد است. برای ساختار داده رویداد به جدول بالا مراجعه کنید.
{
"subdomain": "my-subdomain",
"timestamp": 1645208678,
"event": "cache.single",
"data": {}
}هر درخواست وب هوک شامل یک هدر X-Signature است که حاوی امضای HMAC-SHA256 بدنه درخواست است که با کلید مخفی وبهوک شما امضا شده است. میتوانید این راز را در کنسول زیر تنظیمات webhook خود پیدا کنید.
برای تایید امضا:
X-Signature مقایسه کنید.const signature = request.headers['x-signature'];
const expected = crypto
.createHmac('sha256', env.HB_WEBHOOK_SECRET)
.update(JSON.stringify(request.body))
.digest('hex');
if (signature !== expected) {
return 'Unauthorized';
}ما انتظار داریم کد پاسخ 200 HTTP از سرور شما برای علامت گذاری وب هوک به عنوان موفقیت آمیز باشد. اگر کد پاسخ دیگری دریافت کردیم یا نتوانیم به سرورهای شما دسترسی پیدا کنیم، پس از آن برای 3 بار دیگر سعی می کنیم وب هوک را ارسال کنیم.
اگر همه شکست بخورند، آن وب هوک را به عنوان ناموفق علامت گذاری می کنیم و دیگر آن را به صورت خودکار ارسال نمی کنیم.