Questa guida spiega come l'API Google Drive supporta diversi modi per cercare file e cartelle.
Puoi utilizzare il metodo list
nella risorsa
files
per restituire tutti o alcuni dei file e delle cartelle di un utente di Drive. Il metodo list
può essere utilizzato anche per recuperare fileId
richiesto per alcuni metodi delle risorse (come il metodo get
e il metodo update
).
Utilizzare il parametro fields
Se vuoi specificare i campi da restituire nella risposta, puoi impostare il
fields
parametro
di sistema
con qualsiasi metodo della risorsa files
. Se ometti il parametro fields
, il server restituisce un insieme predefinito di campi specifici per il metodo. Ad esempio, il metodo
list
restituisce solo i campi kind
, id
,
name
, mimeType
e resourceKey
per ogni file. Per restituire campi
diversi, vedi Restituire campi specifici.
Recuperare un file
Per ottenere un file, utilizza il metodo get
sulla risorsa
files
con il parametro di percorso fileId
.
Se non conosci l'ID file, puoi elencare tutti i file utilizzando il metodo list
.
Il metodo restituisce il file come istanza di una risorsa files
. Se fornisci
il parametro di query alt=media
, la risposta include i contenuti del file nel
corpo della risposta. Per scaricare o esportare il file, vedi Scaricare ed esportare
i file.
Per riconoscere il rischio di scaricare malware noti o altri
file abusivi, imposta il
parametro di query acknowledgeAbuse
su true
. Questo campo è applicabile solo quando
il parametro alt=media
è impostato e l'utente è il proprietario del file o
un organizzatore del Drive condiviso in cui si trova il file.
Cerca tutti i file e le cartelle in Il mio Drive dell'utente corrente
Utilizza il metodo list
senza parametri per restituire tutti i file e le cartelle.
GET https://www.googleapis.com/drive/v3/files
Cercare file o cartelle specifici in Il mio Drive dell'utente corrente
Per cercare un insieme specifico di file o cartelle, utilizza il campo q
stringa di query
con il metodo list
per filtrare i file da
restituire combinando uno o più termini di ricerca.
La sintassi della stringa di query contiene le seguenti tre parti:
query_term operator values
Dove:
query_term
è il termine o il campo della query su cui eseguire la ricerca.operator
specifica la condizione per il termine di query.values
sono i valori specifici che vuoi utilizzare per filtrare i risultati di ricerca.
Ad esempio, la seguente stringa di query filtra la ricerca in modo da restituire solo le cartelle impostando il tipo MIME:
q: mimeType = 'application/vnd.google-apps.folder'
Per visualizzare tutti i termini di query dei file, consulta Termini di query specifici per i file.
Per visualizzare tutti gli operatori di query che puoi utilizzare per creare una query, vedi Operatori di query.
Esempi di stringhe di query
La tabella seguente elenca alcuni esempi di stringhe di query di base. Il codice effettivo varia a seconda della libreria client utilizzata per la ricerca.
Devi anche utilizzare il codice di escape per i caratteri speciali nei nomi dei file per assicurarti che la
query funzioni correttamente. Ad esempio, se un nome file contiene sia un apostrofo
('
) sia una barra rovesciata ("\"
), utilizza una barra rovesciata per eseguire l'escape: name
contains 'quinn\'s paper\\essay'
.
Cosa vuoi interrogare | Esempio |
---|---|
File con il nome "hello" | name = 'hello' |
File con un nome contenente le parole "hello" e "goodbye" | name contains 'hello' and name contains 'goodbye' |
File con un nome che non contiene la parola "hello" | not name contains 'hello' |
File che contengono il testo "importante" e nel cestino | fullText contains 'important' and trashed = true |
File che contengono la parola "hello" | fullText contains 'hello' |
File che non contengono la parola "hello" | not fullText contains 'hello' |
File che contengono la frase esatta "hello world" | fullText contains '"hello world"' |
File con una query che contiene il carattere "\" (ad esempio "\authors") | fullText contains '\\authors' |
File che sono cartelle | mimeType = 'application/vnd.google-apps.folder' |
File che non sono cartelle | mimeType != 'application/vnd.google-apps.folder' |
File modificati dopo una determinata data (il fuso orario predefinito è UTC) | modifiedTime > '2012-06-04T12:00:00' |
File di immagini o video modificati dopo una data specifica | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
File aggiunti a Speciali | starred = true |
File all'interno di una raccolta (ad esempio, l'ID cartella nella raccolta parents ) |
'1234567' in parents |
File in una cartella di dati dell'applicazione in una raccolta | 'appDataFolder' in parents |
File per i quali l'utente "test@example.org" è il proprietario | 'test@example.org' in owners |
File per i quali l'utente "test@example.org" dispone dell'autorizzazione di scrittura | 'test@example.org' in writers |
File per i quali i membri del gruppo "group@example.org" dispongono dell'autorizzazione di scrittura | 'group@example.org' in writers |
File condivisi con l'utente autorizzato con "hello" nel nome | sharedWithMe and name contains 'hello' |
File con una proprietà personalizzata visibile a tutte le app | properties has { key='mass' and value='1.3kg' } |
File con una proprietà di file personalizzata privata per l'app richiedente | appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' } |
File che non sono stati condivisi con nessuno o con nessun dominio (solo privati o condivisi con utenti o gruppi specifici) | visibility = 'limited' |
Filtrare i risultati di ricerca con una libreria client
Il seguente esempio di codice mostra come utilizzare una libreria client per filtrare i risultati di ricerca in base ai nomi e agli ID dei file JPEG. Questo esempio utilizza il termine di query mimeType
per restringere i risultati ai file di tipo image/jpeg
. Inoltre, imposta
spaces
su drive
per restringere ulteriormente la ricerca allo spazio
Drive. Quando nextPageToken
restituisce null
,
non ci sono altri risultati.
Java
Python
Node.js
PHP
Cercare file con una proprietà di file personalizzata
Per cercare file con una proprietà personalizzata, utilizza il termine di query di ricerca properties
o
appProperties
con una chiave e un valore. Ad esempio, per
cercare una proprietà di file personalizzata privata per l'app richiedente chiamata
additionalID
con un valore di 8e8aceg2af2ge72e78
:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
Per ulteriori informazioni, vedi Aggiungere proprietà personalizzate ai file.
Cercare file con un'etichetta o un valore di campo specifico
Per cercare file con etichette specifiche, utilizza il termine di query di ricerca labels
con un ID etichetta specifico. Ad esempio: 'labels/LABEL_ID' in
labels
. In caso di esito positivo, il corpo della risposta contiene tutte le istanze di file in cui è
applicata l'etichetta.
Per cercare file senza un ID etichetta specifico: Not
'labels/LABEL_ID' in labels
.
Puoi anche cercare file in base a valori di campi specifici. Ad esempio, per
cercare file con un valore di testo:
labels/LABEL_ID.text_field_id ='TEXT'
.
Per ulteriori informazioni, consulta Cercare file con un'etichetta o un valore di campo specifico.
Cerca nei corpora
Le ricerche che chiamano il metodo list
utilizzano
corpora
di user
per impostazione predefinita. Per cercare
altri corpus, ad esempio i file condivisi con un domain
, imposta il parametro corpora
.
È possibile eseguire ricerche in più corpus in una singola query, anche se potrebbero essere restituiti risultati incompleti
se i corpus combinati sono troppo grandi. Se incompleteSearch
è
true
nel corpo della risposta, significa che non sono stati restituiti tutti i documenti. Se si verifica questo problema, devi restringere la query scegliendo un corpus diverso, ad esempio
user
o drive
.
Argomenti correlati
- Cercare Drive condivisi
- Termini e operatori delle query di ricerca
- Tipi MIME supportati da Google Workspace e Google Drive
- Ruoli e autorizzazioni
- Cercare file con un'etichetta o un valore di campo specifico