En esta página se explican los diferentes endpoints de solicitud que puede usar para acceder a Cloud Storage. Cloud Storage admite los protocolos HTTP/1.1, HTTP/2 y HTTP/3. Un endpoint es la ubicación donde se puede acceder a Cloud Storage, que se escribe como una URL.
Solicitudes típicas a la API
API JSON
Cuando hagas solicitudes a la API JSON directamente a Cloud Storage, utiliza los siguientes endpoints:
Para las solicitudes generales de la API JSON, excepto las subidas de objetos, utilice el siguiente endpoint y sustituya
PATH_TO_RESOURCE
por el valor adecuado:https://storage.googleapis.com/storage/v1/PATH_TO_RESOURCE
Para subir objetos de la API JSON, usa el siguiente endpoint y sustituye
BUCKET_NAME
por el valor adecuado:https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
En el caso de las solicitudes por lotes, usa el siguiente endpoint y sustituye
PATH_TO_RESOURCE
por el valor adecuado:https://storage.googleapis.com/batch/storage/v1/PATH_TO_RESOURCE
Si quieres descargar objetos de la API JSON, puedes usar el siguiente endpoint (opcional), sustituyendo
BUCKET_NAME
yOBJECT_NAME
por los valores correspondientes:https://storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media
Los endpoints de la API JSON solo aceptan solicitudes HTTPS.
API XML
Cuando hagas solicitudes a la API XML directamente a Cloud Storage, usa el punto de conexión virtual hosted-style o path-style y sustituye BUCKET_NAME
y OBJECT_NAME
por los valores correspondientes:
Endpoint de estilo de alojamiento virtual:
https://BUCKET_NAME.storage.googleapis.com/OBJECT_NAME
Endpoint de estilo de ruta:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
Los endpoints de la API XML admiten el cifrado de capa de conexión segura (SSL), por lo que puede usar HTTP o HTTPS. Se recomienda usar HTTPS, sobre todo si te autenticas en Cloud Storage mediante OAuth 2.0.
Si las conexiones se realizan a través de un proxy, consulta el tema sobre solución de problemas para ver las prácticas recomendadas.
Codificar partes de la ruta de la URL
Además de las consideraciones generales sobre la asignación de nombres a los segmentos y a los objetos, para asegurar la compatibilidad entre las herramientas de Cloud Storage, debe codificar los siguientes caracteres cuando aparezcan en el nombre del objeto o en la cadena de consulta de una URL de solicitud:
!
, #
, $
, &
, '
, (
, )
, *
, +
, ,
, /
, :
, ;
, =
, ?
,
@
, [
, ]
y espacios.
Por ejemplo, si envías una solicitud de la API JSON GET
para el objeto llamado foo??bar
en el contenedor example-bucket
, la URL de la solicitud debe ser la siguiente:
GET https://storage.googleapis.com/storage/v1/b/example-bucket/o/foo%3f%3fbar
Ten en cuenta que no todos los caracteres que se indican deben codificarse en todos los casos. Además, las bibliotecas de cliente, como las bibliotecas de cliente de Cloud Storage, suelen encargarse de la codificación, por lo que puedes transferir el nombre de objeto sin procesar cuando utilices estas herramientas.
Para obtener más información sobre el uso de la codificación de porcentaje, consulta la sección 3.3 Path de RFC 3986.
Endpoints de la consolaGoogle Cloud
Cuando usas la Google Cloud consola, accedes a diferentes recursos mediante las siguientes URLs:
Recurso | URL |
---|---|
Lista de tareas de un proyecto | https://console.cloud.google.com/storage/browser?project=PROJECT_ID |
Lista de objetos de un segmento | https://console.cloud.google.com/storage/browser/BUCKET_NAME |
Detalles de un objeto | https://console.cloud.google.com/storage/browser/_details/BUCKET_NAME/OBJECT_NAME |
Datos de un objeto | Consulta Descargas de exploradores autenticadas. |
gcloud endpoints
Los comandos gcloud storage
usan endpoints de la API JSON. La CLI de gcloud gestiona el uso de los endpoints en tu nombre.
Puntos finales de la biblioteca de cliente
Las bibliotecas de cliente de Cloud Storage gestionan los endpoints de solicitud automáticamente. También puedes definir el endpoint de la solicitud manualmente. Esto puede ser útil cuando quieras usar un endpoint específico o para hacer pruebas, como cuando quieras usar un emulador local:
C++
Para obtener más información, consulta la documentación de referencia de la API C++ de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
C#
Para obtener más información, consulta la documentación de referencia de la API C# de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Go
Para obtener más información, consulta la documentación de referencia de la API Go de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Node.js
Para obtener más información, consulta la documentación de referencia de la API Node.js de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
PHP
Para obtener más información, consulta la documentación de referencia de la API PHP de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Python
Para obtener más información, consulta la documentación de referencia de la API Python de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Ruby
Para obtener más información, consulta la documentación de referencia de la API Ruby de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Dominios personalizados
Si tienes tu propio dominio, puedes asignar sus URIs a uno o varios
Google Cloud servicios, incluidos los segmentos de Cloud Storage. El término nombre de host asociado a un contenedor se usa a veces para describir este endpoint de solicitud de Cloud Storage. Para conectar un dominio personalizado a un segmento de Cloud Storage, debes crear una redirección A
o CNAME
en tu registro DNS.
A
registros
Cuando conectas un dominio personalizado a un segmento de Cloud Storage, normalmente debes usar un registro A
.
A
registros de solicitudes de asistenciaHTTPS
.- Los registros
A
se pueden usar para enviar el tráfico procedente de un solo nombre de host a varios segmentos, así como a otros servicios Google Cloud . A
no impone ninguna restricción al nombre del segmento.
El inconveniente de usar registros A
es que requieren una configuración adicional y el uso de Google Cloud recursos adicionales. Consulta la guía Configurar el balanceador de carga y el certificado SSL para obtener información sobre cómo usar dominios personalizados con registros A
.
CNAME
registros
Cuando conectas un dominio personalizado a un segmento de Cloud Storage, puedes usar un registro CNAME
, pero ten en cuenta que esto tiene ciertas limitaciones:
- Los registros
CNAME
solo admiten solicitudesHTTP
. - Los registros
CNAME
solo pueden dirigir el tráfico de un nombre de host determinado a un único contenedor. - Los registros
CNAME
requieren que el nombre de host y el nombre del segmento asociado coincidan, y debes validar el nombre del segmento. - Los registros
CNAME
solo se pueden usar en subdominios, comowww.mydomain.com
, no en dominios de nivel superior, comomydomain.com
.
Cuando se usan registros CNAME
, la parte del nombre de host del registro CNAME
debe ser la siguiente:
c.storage.googleapis.com.
Por ejemplo, supongamos que tu dominio es example.com
y quieres que tus clientes puedan acceder a mapas de viajes. Puedes crear un segmento en Cloud Storage llamado travel-maps.example.com
y, a continuación, crear un registro CNAME
en DNS que redirija las solicitudes de travel-maps.example.com
al URI de Cloud Storage. Para ello, publica el siguiente registro CNAME
en DNS:
NAME TYPE DATA travel-maps CNAME c.storage.googleapis.com.
De esta forma, tus clientes podrán usar la siguiente URL para acceder a un mapa de París:
http://travel-maps.example.com/paris.jpg
El servicio de registro de tu dominio debería ofrecerte una forma de administrar tu dominio, incluida la opción de añadir un registro de recursos CNAME
. Por ejemplo, si usas Cloud DNS, puedes consultar las instrucciones para añadir registros de recursos en la página Añadir, modificar y eliminar registros.
Descargas en el navegador con autenticación
Las descargas en el navegador con autenticación usan la autenticación basada en cookies. La autenticación basada en cookies pide a los usuarios que inicien sesión en su cuenta de usuario para establecer su identidad. La cuenta especificada debe tener el permiso adecuado para descargar el objeto. Por ejemplo, si usas Identity and Access Management para controlar el acceso a tus objetos, la cuenta del usuario debe tener el permiso storage.objects.viewer
, que se concede en el rol Lector de objetos de Storage.
Para descargar un objeto mediante la autenticación basada en cookies, usa la siguiente URL y sustituye BUCKET_NAME
y OBJECT_NAME
por los valores correspondientes:
https://storage.cloud.google.com/BUCKET_NAME/OBJECT_NAME
Por ejemplo, si has compartido una imagen london.jpg
de tu contenedor
example-maps
, la URL sería la siguiente:
https://storage.cloud.google.com/example-maps/london.jpg
Una vez que hayas iniciado sesión correctamente, se te redirigirá al contenido solicitado. La URL de este contenido empieza por una secuencia alfanumérica y contiene la cadena /download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME
.
Es obligatorio usar HTTPS al realizar descargas autenticadas en el navegador. Se intenta usar la redirección HTTP a HTTPS.
Acceso a objetos públicos
Todas las solicitudes al URI storage.cloud.google.com
requieren autenticación. Esto se aplica incluso cuando allUsers
tienen permiso para acceder a un objeto. Si quiere que los usuarios descarguen objetos accesibles de forma anónima sin autenticarse, utilice el endpoint de estilo de ruta de la API XML:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
Para obtener más información y ejemplos, consulta Acceder a datos públicos.
Compatibilidad con TLS mutuo
TLS mutuo (mTLS) es un protocolo estándar del sector para la autenticación mutua entre un cliente y un servidor. Cloud Storage admite los siguientes endpoints de mTLS:Solicitudes de la API JSON:
storage.mtls.googleapis.com
Descargas de navegador autenticadas:
storage.mtls.cloud.google.com
Siguientes pasos
- Sube un archivo a Cloud Storage.
- Descargar un archivo de Cloud Storage.
- Alojar un sitio web estático.
- Consulta las opciones para controlar el acceso a tus datos.