كل المستندات

حدود عدد الطلبات

حدود عدد الطلبات في واجهة نيزا: ترويسات الحصة، وما يحدث عند تجاوزها، وكيف تخفّض معدل الطلبات دون أن تفقد أي قرار.

حدود عدد الطلبات والحصص

راقب ترويسات الحصة، وخفّض الحمل قبل الوصول إلى 429، وأعد المحاولة بطريقة متدرجة.

ما الذي تراقبه

الحقلالنوعمطلوبالوصف
X-Quota-Limitheader—إجمالي الحصة المتاحة ضمن دورة الفوترة
X-Quota-Remainingheader—الطلبات المتبقية في الحصة
Retry-Afterheaderعند 429مدة الانتظار قبل محاولة جديدة

الحصة الافتراضية هي 10,000 طلب/ساعة (تُحسب على آخر 60 دقيقة). وعند تجاوز الحد تُعاد الحالة 429 مع ترويسة Retry-After. وقد تختلف الحدود حسب المسار والباقة.

Exponential backoff with jitter
async function requestWithBackoff(url, options, attempt = 0) {
  const response = await fetch(url, options);
  if (response.status !== 429 && response.status < 500) return response;
  if (attempt >= 4) throw new Error("Retry limit reached");

  const retryAfter = Number(response.headers.get("Retry-After"));
  const delay = retryAfter
    ? retryAfter * 1000
    : Math.min(1000 * 2 ** attempt + Math.random() * 250, 30000);
  await new Promise((resolve) => setTimeout(resolve, delay));
  return requestWithBackoff(url, options, attempt + 1);
}