REST Resource: operations

संसाधन: ऑपरेशन

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

JSON के काेड में दिखाना
{
  "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

ऑपरेशन से जुड़ा खास सेवा का मेटाडेटा. आम तौर पर, इसमें गेम की प्रोग्रेस की जानकारी और सामान्य मेटाडेटा शामिल होता है. जैसे, कॉन्टेंट बनाने का समय. ऐसा हो सकता है कि कुछ सेवाएं ऐसा मेटाडेटा न दें. लंबे समय तक चलने वाली कार्रवाई दिखाने वाले किसी भी तरीके में, अगर कोई है, तो मेटाडेटा टाइप का दस्तावेज़ होना चाहिए.

ऐसा ऑब्जेक्ट जिसमें किसी भी तरह के फ़ील्ड शामिल हो सकते हैं. एक अन्य फ़ील्ड "@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)

कार्रवाई पूरी न होने या रद्द होने पर, गड़बड़ी का नतीजा.

response

object

कार्रवाई का सामान्य, सफल जवाब. अगर ओरिजनल तरीका कामयाब होने पर कोई डेटा नहीं दिखाता है, जैसे कि Delete, तो जवाब google.protobuf.Empty होगा. अगर ओरिजनल तरीका स्टैंडर्ड Get/Create/Update है, तो रिस्पॉन्स में रीसोर्स होना चाहिए. अन्य तरीकों के लिए, रिस्पॉन्स का टाइप XxxResponse होना चाहिए. यहां Xxx, मूल तरीके का नाम है. उदाहरण के लिए, अगर ओरिजनल तरीके का नाम TakeSnapshot() है, तो अनुमानित जवाब का टाइप TakeSnapshotResponse होगा.

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

स्थिति

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

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

JSON के काेड में दिखाना
{
  "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" }.

तरीके

cancel

लंबे समय तक चलने वाली कार्रवाई पर एसिंक्रोनस रद्द करने की सुविधा शुरू करता है.

delete

ज़्यादा समय तक चलने वाली कार्रवाई को मिटाता है.

get

लंबे समय तक चलने वाले ऑपरेशन की नई स्थिति दिखाता है.

list

अनुरोध में बताए गए फ़िल्टर से मैच करने वाले ऑपरेशन की सूची बनाता है.