索引
Operations(接口)CancelOperationRequest(消息)DeleteOperationRequest(消息)GetOperationRequest(消息)ListOperationsRequest(消息)ListOperationsResponse(消息)Operation(消息)WaitOperationRequest(消息)
操作
使用 API 服务管理长时间运行的操作。
如果某个 API 方法通常需要很长时间才能完成,您可以将其设计为向客户端返回 Operation,而客户端可以使用此接口通过轮询操作资源来异步接收实际响应,或者将操作资源传递给另一个 API(如 Pub/Sub API)来接收响应。任何返回长时间运行操作的 API 服务都应实现 Operations 接口,以便为开发者提供一致的客户端体验。
| CancelOperation |
|---|
|
对长时间运行的操作启动异步取消。服务器会尽全力取消操作,但不能保证一定成功。如果服务器不支持此方法,则会返回
|
| DeleteOperation |
|---|
|
删除长时间运行的操作。此方法只是表明客户端不再关注操作结果,而不会取消操作。如果服务器不支持此方法,则会返回
|
| GetOperation |
|---|
|
获取长时间运行的操作的最新状态。客户端可以使用此方法,按 API 服务建议的时间间隔来轮询操作结果。
|
| ListOperations |
|---|
|
列出与请求中指定的过滤条件匹配的操作。如果服务器不支持此方法,则会返回
|
| 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 上下文截止时间,则以二者中较短者为准。 |