Documentation ·وثائق
أدلة المستهلك

الأخطاء ورموز الحالة وإعادة المحاولة

الردود التي تعيدها البوابة نفسها، ومعنى كلٍّ منها وما تفعله، ومتى تستحق إعادة المحاولة.

اقرأ هذه الصفحة بـ English

في هذه الصفحة

نظرة سريعة#

تردّ البوابة على أخطائها بجسم JSON فيه حقل message، ويحمل كل رد ترويسة X-Kong-Request-Id. أما الأخطاء الصادرة من خدمة المزوّد نفسها فتُمرَّر كما هي.

{
  "message": "No active subscription for this product"
}

ردود البوابة#

الرمزالرسالةالمعنى وما تفعله
403No active subscription for this productلا اشتراك فعّال لهذا التطبيق في هذا المنتج، أو الاشتراك غير فعّال، أو المفتاح خاطئ. تحقّق من المفتاح ومن الاشتراك.
403Subscription quota exceededنفدت حصة الاشتراك لدورة الفوترة. لا تُعِد المحاولة.
429Endpoint quota exceededنفدت حصة نقطة النهاية. لا تُعِد المحاولة.
404no Route matched with those valuesلا يوجد مسار مطابق للطلب. تحقّق من عنوان البوابة وبادئة الإصدار ومسار نقطة النهاية.
503Subscription service unavailableتبعيّة في البوابة غير متاحة مؤقتاً. أعِد المحاولة بتباعد.
500Route configuration errorإعداد المسار على جانب المنصة غير صحيح. تواصل مع الدعم واذكر معرّف الطلب.

إعادة المحاولة بتباعد أسّي وعشوائية#

أعِد المحاولة للأعطال المؤقتة فقط (أخطاء الشبكة وردود 502 أو 503 أو 504)، ثلاث مرات على الأكثر، وبفاصل عشوائي. وإلا أعاد كل عملائك المحاولة في اللحظة نفسها فصنعوا موجة ثانية.

async function call(fn, tries = 3) {
  for (let i = 0; i < tries; i++) {
    const res = await fn();
    // retry temporary failures only: not an exhausted quota, not a missing subscription
    if (![502, 503, 504].includes(res.status) || i === tries - 1) return res;
    await new Promise((r) => setTimeout(r, 2 ** i * 1000 + Math.random() * 400));
  }
}

حين تحتاج الدعم#

أرسل قيمة X-Kong-Request-Id من الرد عند التواصل مع الدعم، ليُعثر على الاستدعاء (احصل على المساعدة).

مخطّط له

غلاف أخطاء موحّد فيه رمز الخطأ والرسالة ومعرّف الطلب في الجسم؛ وRetry-After في ردود التقييد؛ ورسائل بالعربية أو الإنجليزية بحسب Accept-Language؛ وترويسة Idempotency-Key لإعادة محاولة طلبات POST بأمان.

انظر أيضاً#

هل كانت هذه الصفحة مفيدة؟
آخر تحديث 2026-10-17