BadRequest

نقض‌ها را در درخواست مشتری شرح می‌دهد. این نوع خطا بر جنبه‌های نحوی درخواست تمرکز دارد.

نمایش JSON
{
  "fieldViolations": [
    {
      object (FieldViolation)
    }
  ]
}
فیلدها
fieldViolations[]

object (FieldViolation)

همه نقض‌ها را در درخواست مشتری شرح می‌دهد.

FieldViolation

نوع پیامی که برای توصیف یک فیلد درخواست بد استفاده می‌شود.

نمایش JSON
{
  "field": string,
  "description": string,
  "reason": string,
  "localizedMessage": {
    object (LocalizedMessage)
  }
}
فیلدها
field

string

مسیر منتهی به فیلدی در بدنه درخواست. مقدار، دنباله‌ای از شناسه‌های جداشده با نقطه خواهد بود که فیلد بافر پروتکل را شناسایی می‌کند.

موارد زیر را درنظر بگیرید:

message CreateContactRequest {
  message EmailAddress {
    enum Type {
      TYPE_UNSPECIFIED = 0;
      HOME = 1;
      WORK = 2;
    }

    optional string email = 1;
    repeated EmailType type = 2;
  }

  string fullName = 1;
  repeated EmailAddress email_addresses = 2;
}

در این مثال، در پروتکل field می‌تواند یکی از مقادیر زیر را داشته باشد:

  • ‫fullName برای نقض در مقدار fullName
  • ‫email_addresses[0].email برای نقض در فیلد email پیام email_addresses اول
  • email_addresses[2].type[1] برای نقض در type دوم در پیام email_addresses سوم.

در JSON، مقادیر یکسان به‌صورت زیر نشان داده می‌شوند:

  • ‫fullName برای نقض در مقدار fullName
  • ‫emailAddresses[0].email برای نقض در فیلد email پیام emailAddresses اول
  • emailAddresses[2].type[1] برای نقض در مقدار دوم type در پیام سوم emailAddresses.
description

string

توضیحی درباره اینکه چرا عنصر درخواست بد است.

reason

string

دلیل خطای سطح فیلد. این مقدار ثابتی است که علت قریب‌الوقوع خطای سطح فیلد را مشخص می‌کند. باید نوع FieldViolation را در محدوده google.rpc.ErrorInfo.domain به‌صورت منحصربه‌فرد شناسایی کند. این نام باید حداکثر ۶۳ نویسه داشته باشد و با عبارت باقاعده [A-Z][A-Z0-9_]+[A-Z0-9] مطابقت داشته باشد که نشان‌دهنده UPPER_SNAKE_CASE است.

localizedMessage

object (LocalizedMessage)

پیام خطای بومی‌سازی‌شده‌ای برای خطاهای سطح فیلد ارائه می‌دهد که بازگرداندن آن به مصرف‌کننده میانای برنامه‌سازی کاربردی ایمن است.

LocalizedMessage

پیام خطای بومی‌سازی‌شده‌ای ارائه می‌دهد که بازگرداندن آن به کاربر ایمن است و می‌تواند به خطای RPC پیوست شود.

نمایش JSON
{
  "locale": string,
  "message": string
}
فیلدها
locale

string

منطقه زبانی استفاده‌شده براساس مشخصات تعریف‌شده در https://www.rfc-editor.org/rfc/bcp/bcp47.txt. مثال‌ها عبارت‌اند از: «en-US»،‏ «fr-CH»،‏ «es-MX»

message

string

پیام خطای بومی‌سازی‌شده در منطقه زبانی بالا.