索引
Operations(接口)CancelOperationRequest(消息)DeleteOperationRequest(消息)GetOperationRequest(消息)ListOperationsRequest(消息)ListOperationsResponse(消息)Operation(消息)WaitOperationRequest(消息)
运维
使用 API 服务管理长时间运行的操作。
如果某个 API 方法通常需要很长时间才能完成,您可以将其设计为向客户端返回 Operation,而客户端可以使用此接口通过轮询操作资源来异步接收实际响应,或者将操作资源传递给另一个 API(如 Google Cloud Pub/Sub API)来接收响应。任何返回长时间运行操作的 API 服务都应实现 Operations 接口,以便为开发者提供一致的客户端体验。
| CancelOperation | |
|---|---|
|
对长时间运行的操作启动异步取消。服务器会尽全力取消操作,但不能保证一定成功。如果服务器不支持此方法,则会返回
|
|
| DeleteOperation | |
|---|---|
|
删除长时间运行的操作。此方法只是表明客户端不再关注操作结果,而不会取消操作。如果服务器不支持此方法,则会返回
|
|
| GetOperation | |
|---|---|
|
获取长时间运行的操作的最新状态。客户端可以使用此方法,按 API 服务建议的时间间隔来轮询操作结果。
|
|
| ListOperations | |
|---|---|
|
列出与请求中指定的过滤条件匹配的操作。如果服务器不支持此方法,则会返回 注意:API 服务可以替换
|
|
| WaitOperation | |
|---|---|
|
等待指定的长时间运行的操作完成,或者达到指定的超时时长,返回当时的最新状态。如果操作已完成,则立即返回最新状态。如果指定的超时大于默认的 HTTP/RPC 超时,则使用 HTTP/RPC 超时。如果服务器不支持此方法,则会返回
|
|
CancelOperationRequest
Operations.CancelOperation 的请求消息。
| 字段 | |
|---|---|
name |
要取消的操作资源的名称。 |
DeleteOperationRequest
Operations.DeleteOperation 的请求消息。
| 字段 | |
|---|---|
name |
要删除的操作资源的名称。 |
GetOperationRequest
Operations.GetOperation 的请求消息。
| 字段 | |
|---|---|
name |
操作资源的名称。 |
ListOperationsRequest
Operations.ListOperations 的请求消息。
| 字段 | |
|---|---|
name |
操作的父级资源名称。 |
filter |
标准列表过滤条件。 |
page_size |
标准列表页面大小。 |
page_token |
标准列表页面令牌。 |
ListOperationsResponse
Operations.ListOperations 的响应消息。
| 字段 | |
|---|---|
operations[] |
与请求中指定的过滤条件匹配的操作列表。 |
next_page_token |
标准列表下一页令牌。 |
操作
此资源表示由网络 API 调用引发的长时间运行的操作。
| 字段 | ||
|---|---|---|
name |
由服务器分配的名称,该名称仅在最初返回它的那项服务中是唯一的。如果您使用默认 HTTP 映射,则 |
|
metadata |
与操作关联的服务专属元数据。它通常包含进度信息和常见元数据(如创建时间)。一些服务可能不会提供此类元数据。任何返回长时间运行操作的方法都应记录元数据类型(如果有的话)。 |
|
done |
如果值为 |
|
联合字段 result。操作结果,可以是 error,也可以是有效的 response。如果 done == false,则既不会设置 error,也不会设置 response。如果 done == true,则只会设置 error 或 response 中的一项。result 只能是下列其中一项: |
||
error |
操作失败或被取消时表示有错误发生的结果。 |
|
response |
操作成功时的正常响应。如果原始方法在成功时不返回任何数据(如 |
|
WaitOperationRequest
Operations.WaitOperation 的请求消息。
| 字段 | |
|---|---|
name |
要等待的操作资源的名称。 |
timeout |
超时之前等待的最长时间。如果将此字段留空,则等待时间最长为底层 HTTP/RPC 协议允许的时间。如果还指定了 RPC 上下文截止时间,则以二者中较短者为准。 |