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 मैसेज के email फ़ील्ड में हुए उल्लंघन के लिए email_addresses[0].email
  • तीसरे email_addresses मैसेज में, दूसरी type वैल्यू के उल्लंघन के लिए email_addresses[2].type[1].

JSON में, एक जैसी वैल्यू को इस तरह दिखाया जाता है:

  • fullName वैल्यू के उल्लंघन के लिए fullName
  • emailAddresses मैसेज के email फ़ील्ड में हुए उल्लंघन के लिए emailAddresses[0].email
  • तीसरे emailAddresses मैसेज में, दूसरी type वैल्यू के उल्लंघन के लिए emailAddresses[2].type[1].
description

string

अनुरोध एलिमेंट के खराब होने की वजह के बारे में जानकारी.

reason

string

फ़ील्ड-लेवल की गड़बड़ी की वजह. यह एक ऐसी वैल्यू है जो फ़ील्ड-लेवल की गड़बड़ी की मुख्य वजह की पहचान करती है. इससे google.rpc.ErrorInfo.domain के स्कोप में, FieldViolation के टाइप की खास तौर पर पहचान होनी चाहिए. यह ज़्यादा से ज़्यादा 63 वर्णों का होना चाहिए. साथ ही, यह [A-Z][A-Z0-9_]+[A-Z0-9] के रेगुलर एक्सप्रेशन से मेल खाना चाहिए. यह UPPER_SNAKE_CASE को दिखाता है.

localizedMessage

object (LocalizedMessage)

यह फ़ील्ड-लेवल की गड़बड़ियों के लिए, स्थानीय भाषा में गड़बड़ी का मैसेज दिखाता है. इसे एपीआई का इस्तेमाल करने वाले व्यक्ति को दिखाया जा सकता है.

LocalizedMessage

यह फ़ंक्शन, स्थानीय भाषा में गड़बड़ी का ऐसा मैसेज दिखाता है जिसे उपयोगकर्ता को दिखाया जा सकता है. इसे आरपीसी की गड़बड़ी से जोड़ा जा सकता है.

JSON के काेड में दिखाना
{
  "locale": string,
  "message": string
}
फ़ील्ड
locale

string

https://www.rfc-editor.org/rfc/bcp/bcp47.txt पर दिए गए स्पेसिफ़िकेशन के मुताबिक इस्तेमाल की गई भाषा. उदाहरण के लिए: "en-US", "fr-CH", "es-MX"

message

string

ऊपर दी गई स्थानीय भाषा में गड़बड़ी का मैसेज.