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 emailAddresses = 2;
}

इस उदाहरण में, प्रोटो field में इनमें से कोई एक वैल्यू हो सकती है:

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

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