Package 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.

Exemplos

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

O valor do cabeçalho HTTP Content-Type que especifica o tipo de conteúdo do corpo.

data

bytes

O corpo da solicitação/resposta HTTP como binário bruto.

extensions[]

Any

Metadados de resposta específicos do aplicativo. Precisam ser definidos na primeira resposta para APIs de streaming.