REST Resource: operations

منبع: عملیات

این منبع یک عملیات طولانی مدت را نشان می دهد که نتیجه تماس 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/{unique_id} ختم می‌شود.

metadata

object

این فیلد حاوی یک شی DevicesLongRunningOperationMetadata خواهد بود اگر عملیات توسط claimAsync ، unclaimAsync ، یا updateMetadataAsync ایجاد شود.

یک شی حاوی فیلدهایی از نوع دلخواه. یک فیلد اضافی "@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 )

این فیلد همیشه تنظیم نمی‌شود اگر عملیات توسط claimAsync ، unclaimAsync ، یا updateMetadataAsync ایجاد شود. در این مورد، اطلاعات خطا برای هر دستگاه در response.perDeviceStatus.result.status تنظیم می شود.

response

object

این فیلد حاوی یک شی DevicesLongRunningOperationResponse خواهد بود اگر عملیات توسط claimAsync ، unclaimAsync ، یا updateMetadataAsync ایجاد شود.

یک شی حاوی فیلدهایی از نوع دلخواه. یک فیلد اضافی "@type" حاوی یک URI است که نوع را مشخص می کند. مثال: { "id": 1234, "@type": "types.example.com/standard/id" } .

وضعیت

نوع Status یک مدل خطای منطقی را تعریف می کند که برای محیط های برنامه نویسی مختلف، از جمله REST API و RPC API مناسب است. توسط gRPC استفاده می شود. هر پیام Status شامل سه داده است: کد خطا، پیام خطا و جزئیات خطا.

در راهنمای طراحی API می‌توانید درباره این مدل خطا و نحوه کار با آن اطلاعات بیشتری کسب کنید.

نمایندگی JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
فیلدها
code

integer

کد وضعیت، که باید مقداری از google.rpc.Code باشد.

message

string

یک پیغام خطای برنامه‌نویس، که باید به زبان انگلیسی باشد. هر پیام خطای کاربر باید بومی سازی شده و در قسمت google.rpc.Status.details ارسال شود یا توسط مشتری بومی سازی شود.

details[]

object

لیستی از پیام هایی که حاوی جزئیات خطا هستند. مجموعه ای متداول از انواع پیام ها برای استفاده API ها وجود دارد.

یک شی حاوی فیلدهایی از نوع دلخواه. یک فیلد اضافی "@type" حاوی یک URI است که نوع را مشخص می کند. مثال: { "id": 1234, "@type": "types.example.com/standard/id" } .

روش ها

get

آخرین وضعیت یک عملیات طولانی مدت را دریافت می کند.