索引
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 內容期限,則系統會採用較短的期限。 |