L'API Google Drive supporta diversi tipi di azioni di download ed esportazione, come elencato nella tabella seguente:
Azioni di download |
|
||||
Azioni di esportazione |
|
Prima di scaricare o esportare i contenuti dei file, verifica che gli utenti possano scaricare il file utilizzando il campo capabilities.canDownload
nella risorsa files
.
Per descrizioni dei tipi di file menzionati qui, inclusi i file blob e Google Workspace, consulta Tipi di file.
Il resto di questa guida fornisce istruzioni dettagliate per eseguire questi tipi di azioni di download ed esportazione.
Scaricare i contenuti del file blob
Per scaricare un file BLOB archiviato su Drive, utilizza il metodo files.get
con l'ID del file da scaricare
e il parametro URL alt=media
. Il parametro URL alt=media
indica al
server che è stato richiesto il download dei contenuti come formato di risposta alternativo.
Il parametro URL alt=media
è un parametro
di sistema disponibile
in tutte le API REST di Google. Se utilizzi una libreria client per l'API Drive, non è necessario impostare esplicitamente questo parametro.
L'esempio di codice seguente mostra come utilizzare il metodo files.get
per scaricare un
file con le librerie client dell'API Drive.
Java
Python
Node.js
PHP
.NET
Questo esempio di codice utilizza un metodo della libreria che aggiunge il parametro URL alt=media
alla richiesta HTTP sottostante.
I download di file avviati dalla tua app devono essere autorizzati con un ambito che consenta l'accesso in lettura ai contenuti dei file. Ad esempio, un'app che utilizza l'ambito
drive.readonly.metadata
non è autorizzata a scaricare i contenuti del file.
Questo esempio di codice utilizza l'ambito file "drive" limitato che consente agli utenti di visualizzare e gestire tutti i tuoi file di Drive. Per scoprire di più sugli ambiti di Drive, consulta Scegliere gli ambiti dell'API Google Drive.
Gli utenti con autorizzazioni di modifica possono limitare il download da parte degli utenti di sola lettura impostando il campo copyRequiresWriterPermission
su false
.
I file identificati come abusivi
(ad esempio software dannosi) sono scaricabili solo dal proprietario del file.
Inoltre, deve essere incluso il parametro di query get
acknowledgeAbuse=true
per indicare che l'utente ha accettato il rischio di scaricare software potenzialmente indesiderato o altri file illeciti. L'applicazione deve avvisare l'utente in modo interattivo prima di utilizzare questo parametro di query.
Download parziale
Il download parziale prevede il download solo di una parte specifica di un file. Puoi specificare la parte del file che vuoi scaricare utilizzando un intervallo di byte con l'intestazione Range
. Ad esempio:
Range: bytes=500-999
Scaricare i contenuti del file blob in una versione precedente
Per scaricare i contenuti dei file blob di una versione precedente, utilizza il metodo
revisions.get
con l'ID del
file da scaricare, l'ID della revisione e il parametro URL alt=media
.
Il parametro URL alt=media
indica al server che è stato richiesto il download dei contenuti come formato di risposta alternativo. Analogamente a files.get
, il metodo revisions.get
accetta anche il parametro di query facoltativo acknowledgeAbuse
e l'intestazione Range
. Per ulteriori informazioni sul download delle revisioni, consulta Gestire le revisioni dei file.
Il protocollo di richiesta è mostrato qui.
GET https://www.googleapis.com/drive/v3/files/{FILE_ID
}/revisions/{REVISION_ID
}?alt=media
Scaricare i contenuti dei file BLOB in un browser
Per scaricare i contenuti dei file BLOB archiviati su Drive all'interno di un browser, anziché tramite l'API, utilizza il campo webContentLink
della risorsa files
. Se l'utente ha accesso al download del file, viene restituito un link per scaricare il file e i relativi contenuti. Puoi reindirizzare un utente a questo URL o offrirlo come link cliccabile.
Scaricare i contenuti dei file BLOB durante le operazioni a lunga esecuzione
Per scaricare i contenuti dei file BLOB durante le operazioni che richiedono molto tempo, utilizza il metodo
files.download
con l'ID del
file da scaricare. Se vuoi, puoi impostare l'ID della revisione. Questo è l'unico modo per scaricare i file di Google Vids. Per ulteriori informazioni, consulta Gestire operazioni che richiedono molto tempo.
Esportare i contenuti dei documenti di Google Workspace
Per esportare i contenuti in byte dei documenti di Google Workspace, utilizza il metodo files.export
con l'ID del file da esportare
e il tipo MIME corretto. I contenuti esportati sono limitati a 10 MB.
Il seguente esempio di codice mostra come utilizzare il metodo files.export
per esportare un documento Google Workspace in formato PDF utilizzando le librerie client dell'API Drive:
Java
Python
Node.js
PHP
.NET
Questo esempio di codice utilizza l'ambito limitato drive
che consente agli utenti di visualizzare e gestire tutti i tuoi file di Drive. Per scoprire di più sugli ambiti di Drive, consulta Scegliere gli ambiti dell'API Google Drive.
L'esempio di codice dichiara anche il tipo MIME di esportazione come application/pdf
. Per un
elenco completo di tutti i tipi MIME di esportazione supportati per ogni
documento Google Workspace, consulta Tipi MIME di esportazione per i documenti Google Workspace.
Esportare i contenuti dei documenti di Google Workspace in un browser
Per esportare i contenuti dei documenti di Google Workspace in un browser, utilizza il campo
exportLinks
della risorsa
files
. A seconda del tipo di documento, viene restituito un link per scaricare il file e i relativi contenuti per ogni tipo MIME disponibile. Puoi reindirizzare un utente a un URL o offrirlo come link cliccabile.
Esportare i contenuti di un documento di Google Workspace in una versione precedente in un browser
Per esportare i contenuti di un documento di Google Workspace in una versione precedente all'interno di un browser, utilizza il metodo revisions.get
con l'ID del file da scaricare e l'ID della revisione per generare un link di esportazione da cui puoi eseguire il download. Se l'utente ha accesso al download del file, viene restituito un link per scaricare il file e i relativi contenuti. Puoi reindirizzare un utente a questo URL o offrirlo come link cliccabile.
Esportare i contenuti dei documenti di Google Workspace durante le operazioni di lunga durata
Per esportare i contenuti dei documenti di Google Workspace durante le operazioni che richiedono molto tempo,
utilizza il metodo files.download
con
l'ID del file da scaricare e l'ID della revisione. Per ulteriori informazioni, consulta Gestire le operazioni che richiedono molto tempo.