Recurso: operação
Este recurso representa uma operação de longa duração resultante de uma chamada de API de rede.
Representação JSON |
---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
Campos | |
---|---|
name |
O nome atribuído pelo servidor, que é exclusivo somente no mesmo serviço que o retorna originalmente. Se você usar o mapeamento padrão de HTTP, |
metadata |
Metadados específicos do serviço associados à operação. Eles geralmente contêm informações sobre o progresso e metadados comuns, como a hora da criação. Em alguns serviços, esses metadados talvez não sejam fornecidos. Em qualquer método que retorna uma operação de longa duração, o tipo de metadados, se houver, deve ser documentado. Um objeto contendo campos de um tipo arbitrário. Um campo adicional |
done |
Se o valor for |
Campo de união result . O resultado da operação, que pode ser um error ou uma response válida. Se done == false , nem error ou response estão definidos. Se done == true , é possível definir exatamente um entre error ou response . Alguns serviços podem não fornecer o resultado. result pode ser apenas de um dos tipos a seguir: |
|
error |
Resultado do erro da operação em caso de falha ou cancelamento. |
response |
A resposta normal da operação, em caso de êxito. Se o método original não retornar dados em caso de êxito, como Um objeto contendo campos de um tipo arbitrário. Um campo adicional |
Status
O tipo Status
define um modelo de erro lógico que é adequado a diferentes ambientes de programação, incluindo APIs REST e RPC. É usado por gRPC (em inglês). Cada mensagem Status
contém três partes de dados: código do erro, mensagem de erro e detalhes do erro.
É possível descobrir mais sobre esse modelo de erro e como trabalhar com ele no Guia de design de API.
Representação JSON |
---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
Campos | |
---|---|
code |
O código de status, que precisa ser um valor de enumeração de |
message |
Uma mensagem de erro em inglês para o desenvolvedor. Qualquer mensagem de erro para o usuário precisa ser localizada e enviada no campo |
details[] |
Uma lista de mensagens com os detalhes do erro. Há um conjunto comum de tipos de mensagens para as APIs usarem. Um objeto contendo campos de um tipo arbitrário. Um campo adicional |
Métodos |
|
---|---|
|
Recebe o estado mais recente de uma operação de longa duração. |