Mensaje que representa un cuerpo HTTP arbitrario. Solo debería usarse para formatos de carga útil que no pueden representarse como JSON, por ejemplo, datos binarios sin procesar o una página HTML.
Este mensaje se puede usar en métodos de API de transmisión y de no transmisión, en la solicitud y en la respuesta.
Se puede usar como campo de solicitud de alto nivel, que es conveniente si alguien quiere extraer parámetros de la plantilla de URL o HTTP para los campos de solicitudes y también quiere acceder al cuerpo HTTP sin procesar.
Ejemplo:
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);
}
El uso de este tipo solo cambia la manera en que se manejan los cuerpos de la solicitud y la respuesta. Las demás funciones seguirán funcionando sin cambios.
Si se ejecuta de forma correcta, la respuesta es una respuesta HTTP genérica, y el método define su formato.
El cuerpo de la solicitud/respuesta HTTP como objeto binario sin procesar.
String codificada en base 64.
extensions[]
object
Metadatos de la respuesta específica de la aplicación. Se deben configurar en la primera respuesta para las API de transmisión.
Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-29 (UTC)"],[[["\u003cp\u003eRetrieves an image using its ID via a \u003ccode\u003eGET\u003c/code\u003e request to the specified endpoint.\u003c/p\u003e\n"],["\u003cp\u003eRequires an \u003ccode\u003eid\u003c/code\u003e as a query parameter to identify the target asset.\u003c/p\u003e\n"],["\u003cp\u003eThe request body should be empty, and a successful response will be in a format defined by the method.\u003c/p\u003e\n"],["\u003cp\u003eUtilizes gRPC Transcoding for communication and needs the \u003ccode\u003ecloud-platform\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],["This document outlines the process of retrieving an image via its ID using a `GET` request to `https://solar.googleapis.com/v1/geoTiff:get`. The request requires a mandatory `id` parameter within the query. The request body must be empty. The response, a generic HTTP body, is defined by `content``Type`, `data` (base64-encoded string), and `extensions[]` JSON fields. Successful access requires OAuth scope: `https://www.googleapis.com/auth/cloud-platform`. The data can also be streamed using the methods described.\n"],null,["# Method: geoTiff.get\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n - [JSON representation](#body.HttpBody.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nReturns an image by its ID.\n\n### HTTP request\n\n`GET https://solar.googleapis.com/v1/geoTiff:get`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Query parameters\n\n| Parameters ||\n|------|---------------------------------------------------------|\n| `id` | `string` Required. The ID of the asset being requested. |\n\n### Request body\n\nThe request body must be empty.\n\n### Response body\n\nMessage that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page.\n\nThis message can be used both in streaming and non-streaming API methods in the request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body.\n\nExample: \n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest)\n returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody)\n returns (google.protobuf.Empty);\n\n }\n\nExample with streaming methods: \n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n\n }\n\nUse of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.\n\nIf successful, the response is a generic HTTP response whose format is defined by the method.\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------|\n| ``` { \"contentType\": string, \"data\": string, \"extensions\": [ { \"@type\": string, field1: ..., ... } ] } ``` |\n\n| Fields ||\n|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `contentType` | `string` The HTTP Content-Type header value specifying the content type of the body. |\n| `data` | `string (`[bytes](https://developers.google.com/discovery/v1/type-format)` format)` The HTTP request/response body as raw binary. A base64-encoded string. |\n| `extensions[]` | `object` Application specific response metadata. Must be set in the first response for streaming APIs. An object containing fields of an arbitrary type. An additional field `\"@type\"` contains a URI identifying the type. Example: `{ \"id\": 1234, \"@type\": \"types.example.com/standard/id\" }`. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/cloud-platform`"]]