ErrorInfo

تصف هذه السمة سبب الخطأ بتفاصيل منظَّمة.

مثال على حدوث خطأ عند التواصل مع واجهة برمجة التطبيقات "pubsub.googleapis.com" عندما تكون غير مفعّلة:

{ "reason": "API_DISABLED"
  "domain": "googleapis.com"
  "metadata": {
    "resource": "projects/123",
    "service": "pubsub.googleapis.com"
  }
}

تشير هذه الاستجابة إلى أنّ واجهة برمجة التطبيقات pubsub.googleapis.com غير مفعّلة.

في ما يلي مثال على خطأ يتم عرضه عند محاولة إنشاء مثيل Spanner في منطقة غير متوفّرة:

{ "reason": "STOCKOUT"
  "domain": "spanner.googleapis.com",
  "metadata": {
    "availableRegions": "us-central1,us-east2"
  }
}
تمثيل JSON
{
  "reason": string,
  "domain": string,
  "metadata": {
    string: string,
    ...
  }
}
الحقول
reason

string

سبب الخطأ هذه قيمة ثابتة تحدّد السبب المباشر للخطأ. تكون أسباب الخطأ فريدة ضمن نطاق معيّن من الأخطاء. يجب ألا يزيد عدد الأحرف عن 63 حرفًا وأن يتطابق مع التعبير العادي [A-Z][A-Z0-9_]+[A-Z0-9] الذي يمثّل UPPER_SNAKE_CASE.

domain

string

تمثّل هذه السمة المجموعة المنطقية التي ينتمي إليها "السبب". عادةً ما يكون نطاق الخطأ هو اسم الخدمة المسجَّل للأداة أو المنتج الذي يعرض الخطأ. مثال: "pubsub.googleapis.com". إذا تم إنشاء الخطأ بواسطة بعض البنية الأساسية الشائعة، يجب أن يكون نطاق الخطأ قيمة فريدة على مستوى العالم تحدّد البنية الأساسية. بالنسبة إلى بنية Google API الأساسية، يكون نطاق الخطأ هو "googleapis.com".

metadata

map (key: string, value: string)

تفاصيل إضافية منظَّمة حول هذا الخطأ

يجب أن تتطابق المفاتيح مع تعبير عادي من [a-z][a-zA-Z0-9-_]+، ولكن من المفترض أن تكون lowerCamelCase. ويجب أيضًا أن يكون طولها 64 حرفًا كحدّ أقصى. عند تحديد القيمة الحالية للحدّ المتجاوز، يجب أن تكون الوحدات مضمّنة في المفتاح وليس في القيمة. على سبيل المثال، بدلاً من {"instanceLimit": "100/request"}، يجب عرض {"instanceLimitPerRequest": "100"} إذا تجاوز العميل عدد المثيلات التي يمكن إنشاؤها في طلب واحد (على شكل دُفعة).

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }