Pacote google.api

Índice

HttpBody

É a mensagem que representa um corpo HTTP arbitrário. Use-a somente para formatos de payload que não podem ser representados como JSON, por exemplo, binário bruto ou uma página HTML.

É possível usar essa mensagem em métodos de API de streaming e não streaming na solicitação e na resposta.

Ela pode ser usada como um campo de solicitação de nível superior, o que será conveniente se você quiser extrair parâmetros do modelo de URL ou HTTP para os campos da solicitação e também quiser acessar o corpo HTTP bruto.

Exemplo:

message GetResourceRequest {
  // A unique request id.
  string request_id = 1;

  // The raw HTTP body is bound to this field.
  google.api.HttpBody http_body = 2;
}

service ResourceService {
  rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);
  rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);
}

Exemplo com métodos de streaming:

service CaldavService {
  rpc GetCalendar(stream google.api.HttpBody)
    returns (stream google.api.HttpBody);
  rpc UpdateCalendar(stream google.api.HttpBody)
    returns (stream google.api.HttpBody);
}

O uso desse tipo altera somente o modo como os corpos de solicitação e resposta são tratados. Todos os outros recursos continuarão a funcionar sem alteração.

Campos
content_type

string

É a string de tipo de conteúdo HTTP que representa o tipo de conteúdo do corpo.

data

bytes

São os dados binários do corpo HTTP.

extensions[]

Any

São os metadados de resposta específicos do aplicativo. Precisam ser definidos na primeira resposta para APIs de streaming.