REST Resource: operations

संसाधन: कार्रवाई

यह संसाधन, नेटवर्क एपीआई कॉल की वजह से लंबे समय तक चलने वाले ऑपरेशन को दिखाता है.

जेएसओएन के काेड में दिखाना
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
फ़ील्ड
name

string

सर्वर से असाइन किया गया नाम, जो मूल रूप से इसे लौटाने वाली सेवा के अंदर ही यूनीक होता है. अगर आप डिफ़ॉल्ट एचटीटीपी मैपिंग का इस्तेमाल करते हैं, तो name एक ऐसा संसाधन नाम होना चाहिए जिसके आखिर में operations/{unique_id} हो.

metadata

object

अगर ऑपरेशन claimAsync, unclaimAsync या updateMetadataAsync ने बनाया है, तो इस फ़ील्ड में DevicesLongRunningOperationMetadata ऑब्जेक्ट होगा.

आर्बिट्रेरी टाइप के फ़ील्ड वाला ऑब्जेक्ट. एक और फ़ील्ड "@type" में एक यूआरआई है जो इस तरह की पहचान कर रहा है. उदाहरण: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

अगर वैल्यू false है, तो इसका मतलब है कि कार्रवाई अब भी चल रही है. अगर true की कार्रवाई की जाती है, तो error या response उपलब्ध होता है.

यूनियन फ़ील्ड result. कार्रवाई का नतीजा, error या मान्य response हो सकता है. अगर done == false है, तो error या response सेट नहीं है. अगर done == true है, तो error या response में से कोई एक सेट किया जा सकता है. हो सकता है कि कुछ सेवाओं के नतीजे न दिखें. result इनमें से सिर्फ़ एक हो सकता है:
error

object (Status)

अगर claimAsync, unclaimAsync या updateMetadataAsync ने कार्रवाई की है, तो यह फ़ील्ड हमेशा सेट नहीं होगा. इस मामले में, हर डिवाइस की गड़बड़ी की जानकारी response.perDeviceStatus.result.status में सेट होती है.

response

object

अगर ऑपरेशन claimAsync, unclaimAsync या updateMetadataAsync ने बनाया है, तो इस फ़ील्ड में DevicesLongRunningOperationResponse ऑब्जेक्ट होगा.

आर्बिट्रेरी टाइप के फ़ील्ड वाला ऑब्जेक्ट. एक और फ़ील्ड "@type" में एक यूआरआई है जो इस तरह की पहचान कर रहा है. उदाहरण: { "id": 1234, "@type": "types.example.com/standard/id" }.

स्थिति

Status टाइप, लॉजिकल गड़बड़ी वाले मॉडल के बारे में बताता है. यह अलग-अलग प्रोग्रामिंग एनवायरमेंट के लिए सही होता है. इनमें REST API और आरपीसी एपीआई भी शामिल हैं. इसका इस्तेमाल gRPC करता है. हर Status मैसेज में डेटा के तीन हिस्से होते हैं: गड़बड़ी कोड, गड़बड़ी का मैसेज, और गड़बड़ी की जानकारी.

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

जेएसओएन के काेड में दिखाना
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
फ़ील्ड
code

integer

स्टेटस कोड, google.rpc.Code की इनम वैल्यू होना चाहिए.

message

string

डेवलपर को दिखने वाला गड़बड़ी का मैसेज, जो अंग्रेज़ी में होना चाहिए. उपयोगकर्ता को दिखने वाले किसी भी गड़बड़ी के मैसेज को स्थानीय भाषा में लिखा जाना चाहिए और उसे google.rpc.Status.details फ़ील्ड में भेजा जाना चाहिए या उसे क्लाइंट की स्थानीय भाषा में लिखना चाहिए.

details[]

object

गड़बड़ी की जानकारी देने वाले मैसेज की सूची. एपीआई के इस्तेमाल के लिए, मैसेज टाइप का एक सामान्य सेट है.

आर्बिट्रेरी टाइप के फ़ील्ड वाला ऑब्जेक्ट. एक और फ़ील्ड "@type" में एक यूआरआई है जो इस तरह की पहचान कर रहा है. उदाहरण: { "id": 1234, "@type": "types.example.com/standard/id" }.

तरीके

get

लंबे समय तक चलने वाली कार्रवाई की नई स्थिति की जानकारी मिलती है.