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 ,则操作完成,并且或者errorresponse是可用的。

联盟场result 。的操作结果,其可以是一个error或有效的response 。如果done == false ,既不error也不response设置。如果done == true ,正好一个errorresponse设置。 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" }