Operation

این منبع یک عملیات طولانی مدت را نشان می دهد که نتیجه تماس API شبکه است.

نمایندگی 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

نام اختصاص داده شده به سرور، که فقط در سرویسی که در ابتدا آن را برمی گرداند منحصر به فرد است. اگر شما استفاده از پیش فرض HTTP نقشه برداری، name باید قالب operations/some/unique/name .

metadata

object

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

یک شی حاوی فیلدهایی از نوع دلخواه. یک قسمت دیگر "@type" شامل یک URI شناسایی نوع. به عنوان مثال: { "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" شامل یک URI شناسایی نوع. به عنوان مثال: { "id": 1234, "@type": "types.example.com/standard/id" } .