La API de Google Drive admite varios tipos de acciones de descarga y exportación, como en la siguiente tabla:
Descargas |
|
|||
Exportaciones |
|
Antes de descargar o exportar el contenido del archivo, verifica que los usuarios puedan descargar la
con el campo capabilities.canDownload
de la
files
.
En el resto de esta guía, se proporcionan instrucciones detalladas para realizar estos tipos de acciones de descarga y exportación.
Descargar contenido del archivo BLOB
Para descargar un archivo BLOB almacenado en Drive, usa el método files.get
con el ID del archivo que deseas descargar.
y el parámetro de URL alt=media
. El parámetro de URL alt=media
le indica al
servidor que indica que se solicita una descarga de contenido como respuesta alternativa
de un conjunto de datos
tengan un formato común.
El parámetro de URL alt=media
es un sistema
parámetro
disponibles en todas las APIs de REST de Google. Si usas una biblioteca cliente para
API de Drive, no necesitas establecer este parámetro de forma explícita.
En la siguiente muestra de código, se indica cómo usar el método files.get
para descargar un
con las bibliotecas cliente de la API de Drive.
Java
Python
Node.js
PHP
.NET
En esta muestra de código, se usa un método de biblioteca que agrega el parámetro de URL alt=media
a la solicitud HTTP subyacente.
Las descargas de archivos que se inician desde tu app deben autorizarse con un permiso que permita
acceso de lectura al contenido del archivo. Por ejemplo, una aplicación que utiliza el
El permiso drive.readonly.metadata
no está autorizado para descargar el contenido del archivo.
Esta muestra de código usa el permiso de archivo “drive” restringido que permite a los usuarios
ver y administrar todos tus archivos de Drive. Para obtener más información
Para los permisos de Drive, consulta Elige la API de Google Drive
permisos.
Los usuarios con permisos de edición pueden restringir las descargas para los usuarios con acceso de lectura mediante
Configura copyRequiresWriterPermission
en false
.
Los archivos se identifican como
abusivo
(como software dañino) solo el propietario del archivo puede descargarlos.
Además, se debe incluir el parámetro de consulta acknowledgeAbuse=true
de get
.
para indicar que el usuario reconoce el riesgo de descargar archivos
software no deseado u otros archivos abusivos. Tu aplicación debe interactuar
advertir al usuario antes de usar este parámetro de consulta.
Descarga parcial
La descarga parcial implica descargar solo una parte específica de un archivo. Tú
puedes especificar la parte del archivo que deseas descargar mediante un archivo de byte
rango
con el encabezado Range
. Por ejemplo:
Range: bytes=500-999
Descarga el contenido del archivo BLOB en una versión anterior
Para descargar el contenido de un archivo BLOB en una versión anterior, usa la
revisions.get
con el ID de
el archivo que se descargará, el ID de la revisión y el parámetro de URL alt=media
.
El parámetro de URL alt=media
indica al servidor que se realiza una descarga de contenido
que se solicitan como un formato de respuesta alternativo. Al igual que con files.get
, la
El método revisions.get
también acepta el parámetro de consulta opcional
acknowledgeAbuse
y el encabezado Range
. Para obtener más información sobre las descargas
revisiones, consulta Descarga y publica archivos
revisiones.
Descarga el contenido del archivo BLOB en un navegador
Para descargar el contenido de los archivos BLOB almacenados en Drive en una
navegador, en lugar de hacerlo a través de la API, usa el
Campo webContentLink
del
files
recurso. Si el usuario tiene descargas
acceso al archivo, se crea un vínculo para descargar el archivo y su contenido
que se devuelven. Puedes redireccionar a un usuario a esta URL, o bien ofrecerla como un elemento en el que se puede hacer clic
enlace.
Exporta contenido de documentos de Google Workspace
Para exportar contenido de bytes de documentos de Google Workspace, usa el método files.export
con el ID del archivo que se exportará.
y el tipo de MIME correcto. Exportado
el contenido está limitado a 10 MB.
En la siguiente muestra de código, se indica cómo usar el método files.export
para exportar un
Documento de Google Workspace en formato PDF con el cliente de la API de Drive
bibliotecas:
Java
Python
Node.js
PHP
.NET
En esta muestra de código, se usa el permiso drive
restringido que permite a los usuarios ver y
administrar todos tus archivos de Drive. Para obtener más información
Para los permisos de Drive, consulta Elige la API de Google Drive
permisos.
La muestra de código también declara el tipo de MIME de exportación como application/pdf
. Para un
lista completa de todos los tipos de MIME de exportación admitidos para cada servicio de Google Workspace
consulta Cómo exportar tipos de MIME para Google Workspace
documentos.
Exporta contenido de documentos de Google Workspace a un navegador
Para exportar contenido de documentos de Google Workspace a un navegador, usa el
Campo exportLinks
del
files
recurso. Según el documento
de ese tipo, se devuelve un vínculo para descargar el archivo y su contenido para cada MIME
tipo disponible. Puedes redireccionar a un usuario a una URL, o bien ofrecerla como
en el que se puede hacer clic.
Exporta el contenido de los documentos de Google Workspace a una versión anterior en un navegador
Para exportar el contenido de un documento de Google Workspace en una versión anterior en un
navegador, usa el método revisions.get
con el ID del archivo que se descargará y el ID de la revisión. Si el usuario tiene
acceso de descarga al archivo, se crea un vínculo para descargar el archivo y su contenido
que se devuelven. Puedes redireccionar a un usuario a esta URL, o bien ofrecerla como un elemento en el que se puede hacer clic
enlace.