google.longrunning 软件包

索引

Operations

管理使用 API 服务进行的长时间运行的操作。

如果某一 API 方法通常需要很长时间才能完成,您可以通过适当设计,让其将 Operation 返回给客户端,而客户端可以使用此接口轮询操作资源以异步接收实际响应,或者将操作资源传递给另一个 API(如 Google Cloud Pub/Sub API)来接收响应。任何返回长时间运行操作的 API 服务都应实现 Operations 接口,以便为开发者提供一致的客户端体验。

CancelOperation

rpc CancelOperation(CancelOperationRequest) returns (Empty)

对长时间运行的操作启动异步取消。服务器会尽全力取消操作,但不能保证一定成功。如果服务器不支持此方法,它会返回 google.rpc.Code.UNIMPLEMENTED。客户端可以使用 Operations.GetOperation 或其他方法来检查操作是已成功取消还是仍然完成了。成功取消时,操作不会被删除;而是变成值为 Operation.errorgoogle.rpc.Status.code 为 1(对应于 Code.CANCELLED)的操作。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证指南

DeleteOperation

rpc DeleteOperation(DeleteOperationRequest) returns (Empty)

删除长时间运行的操作。此方法只是表明客户端不再关注操作结果,而不会取消操作。如果服务器不支持此方法,它会返回 google.rpc.Code.UNIMPLEMENTED

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证指南

GetOperation

rpc GetOperation(GetOperationRequest) returns (Operation)

获取长时间运行的操作的最新状态。客户端可以使用此方法来按 API 服务建议的时间间隔来轮询操作结果。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证指南

ListOperations

rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse)

列出与请求中指定的过滤条件匹配的操作。如果服务器不支持此方法,它会返回 UNIMPLEMENTED

注意:API 服务可以替换 name 绑定,以使用不同的资源名称方案(如 users/*/operations)。要替换此绑定,API 服务可以将诸如 "/v1/{name=users/*}/operations" 这样的绑定添加到其服务配置中。为了向后兼容,默认名称包含操作集合 ID,但是执行替换操作的用户必须确保名称绑定为父级资源,而不是操作集合 ID。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证指南

CancelOperationRequest

Operations.CancelOperation 的请求消息。

字段
name

string

要取消的操作资源的名称。

DeleteOperationRequest

Operations.DeleteOperation 的请求消息。

字段
name

string

要删除的操作资源的名称。

GetOperationRequest

Operations.GetOperation 的请求消息。

字段
name

string

操作资源的名称。

ListOperationsRequest

Operations.ListOperations 的请求消息。

字段
name

string

操作的父级资源名称。

filter

string

标准列表过滤条件。

page_size

int32

标准列表页面大小。

page_token

string

标准列表页面令牌。

ListOperationsResponse

Operations.ListOperations 的响应消息。

字段
operations[]

Operation

与请求中指定的过滤条件匹配的操作列表。

next_page_token

string

标准列表下一页令牌。

Operation

此资源表示由网络 API 调用引发的长时间运行的操作。

字段
name

string

服务器分配的名称,此名称仅在最初返回它的同一服务内保持唯一。如果您使用默认 HTTP 映射,则 name 的格式应为 operations/some/unique/name

metadata

Any

与操作关联的服务专属元数据。它通常包含进度信息和常见元数据(如创建时间)。一些服务可能不会提供此类元数据。任何返回长时间运行操作的方法都应记录元数据类型(如果有的话)。

done

bool

如果值为 false,则表示操作仍在进行中。如果值为 true,则表示操作完成,并且系统会提供 errorresponse

联合字段 result。操作结果,可以是 error 或有效的 response。如果 donefalse,则系统不会设置 errorresponse。如果 donetrue,则系统会设置 errorresponse 中的一项。result 只能为以下项之一:
error

Status

操作失败或被取消时的错误结果。

response

Any

操作成功时的正常响应。如果原始方法(如 Delete)在成功时没有返回任何数据,则响应为 google.protobuf.Empty。如果原始方法为标准 Get/Create/Update 方法,则响应为相应的资源。对于其他方法,响应类型应为 XxxResponse,其中 Xxx 表示原始方法名称。例如,如果原始方法名称为 TakeSnapshot(),则推断的响应类型为 TakeSnapshotResponse