Google Drive API'si, dosya ve klasör aramak için çeşitli yöntemleri destekler.
Geri dönmek için files.list
yöntemini kullanabilirsiniz
Drive kullanıcısının dosya ve klasörlerinin tamamı veya bir kısmı. files.list
yöntemi, bazı kaynaklar için gerekli olan fileId
değerini almak amacıyla da kullanılabilir
yöntemler (ör. files.get
ve
files.update
) dokunun.
Geçerli kullanıcının Drive'ım bölümündeki tüm dosya ve klasörleri ara
Tüm dosyaları ve tüm dosyaları döndürmek için parametre olmadan files.list
yöntemini kullanın.
klasörlerini tıklayın.
GET https://www.googleapis.com/drive/v3/files
Geçerli kullanıcının Drive'ım bölümünde belirli dosyaları veya klasörleri arama
Belirli bir dosya veya klasör grubunu aramak için sorgu dizesi q
alanını kullanın
files.list
yöntemiyle
bir veya daha fazla arama terimini birleştirerek döndürülecek dosyaları bulun.
Bir sorgu dizesi aşağıdaki üç bölümden oluşur:
query_term operator values
Burada:
query_term
, arama için kullanılacak sorgu terimi veya alanıdır.operator
, sorgu teriminin koşulunu belirtir.values
, aramanızı filtrelemek için kullanmak istediğiniz belirli değerlerdir sonuç.
Filtre dosyalarını ve klasörlerini kullanabileceğiniz sorgu terimlerini ve operatörleri görüntülemek için Arama sorgusu terimleri ve operatörleri başlıklı makaleyi inceleyin.
Örneğin, aşağıdaki sorgu dizesi, aramayı yalnızca sonuç döndürecek şekilde filtreler klasörlerini tanımlamak için:
q: mimeType = 'application/vnd.google-apps.folder'
MIME türleri hakkında daha fazla bilgi için Google Workspace ve Google Drive sayfasına bakın desteklenen MIME türleri.
Sorgu dizesi örnekleri
Aşağıdaki tabloda bazı temel sorgu dizelerine ilişkin örnekler listelenmiştir. Asıl kod , aramanız için kullandığınız istemci kitaplığına bağlı olarak farklılık gösterir.
Ayrıca dosya adlarında özel karakterler kullanmaktan da
sorgu doğru şekilde çalışıyor. Örneğin, bir dosya adında hem kesme işareti hem de
('
) ve ters eğik çizgi ("\"
) karakteri içeriyorsa, bunlar için ters eğik çizgi kullanın: name
contains 'quinn\'s paper\\essay'
.
Sorgulamak istediğiniz şey | Örnek |
---|---|
"hello" adlı dosyalar | name = 'hello' |
"Merhaba" kelimelerini içeren bir ada sahip dosyalar ve "hoşça kalın" | name contains 'hello' and name contains 'goodbye' |
Adı "merhaba" kelimesini içermeyen dosyalar | not name contains 'hello' |
"Önemli" metnini içeren dosyalar ve çöp kutusunda | fullText contains 'important' and trashed = true |
"Merhaba" kelimesini içeren dosyalar | fullText contains 'hello' |
"Merhaba" kelimesini içermeyen dosyalar | not fullText contains 'hello' |
Tam olarak "merhaba dünya" ifadesini içeren dosyalar | fullText contains '"hello world"' |
"\" içeren sorgu içeren dosyalar karakter (örneğin, "\authors") | fullText contains '\\authors' |
Klasör olan dosyalar | mimeType = 'application/vnd.google-apps.folder' |
Klasör olmayan dosyalar | mimeType != 'application/vnd.google-apps.folder' |
Belirli bir tarihten sonra değiştirilen dosyalar (varsayılan saat dilimi UTC'dir) | modifiedTime > '2012-06-04T12:00:00' |
Belirli bir tarihten sonra değiştirilen resim veya video dosyaları | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
Yıldızlı dosyalar | starred = true |
Bir koleksiyondaki dosyalar (örneğin, parents koleksiyonundaki klasör kimliği) |
'1234567' in parents |
Bir koleksiyondaki uygulama verileri klasöründeki dosyalar | 'appDataFolder' in parents |
"test@example.org" kullanıcısının bulunduğu dosyalar sahibidir | 'test@example.org' in owners |
"test@example.org" kullanıcısının bulunduğu dosyalar yazma iznine sahip | 'test@example.org' in writers |
"grup@example.org" grubunun üyelerine ait dosyalar yazma iznine sahip | 'group@example.org' in writers |
Yetkili kullanıcıyla "hello" mesajıyla paylaşılan dosyalar adında | sharedWithMe and name contains 'hello' |
Tüm uygulamalar tarafından görülebilen özel dosya özelliğine sahip dosyalar | properties has { key='mass' and value='1.3kg' } |
İstekte bulunan uygulamaya özel özel dosya özelliğine sahip dosyalar | appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' } |
Herhangi bir kişiyle veya alanla paylaşılmayan (yalnızca gizli ya da belirli kullanıcılar veya gruplarla paylaşılmış) dosyalar | visibility = 'limited' |
Arama sonuçlarını istemci kitaplığıyla filtreleme
Aşağıdaki kod örneğinde, aramayı filtrelemek için istemci kitaplığının nasıl kullanılacağı gösterilmektedir
dosya adlarına ve JPEG dosyalarının kimliklerine dönüştürülecektir. Bu örnekte mimeType
kullanılıyor
sonuçları image/jpeg
türündeki dosyalara göre daraltmak için sorgu terimi. Aynı zamanda
Aramayı Drive ile daha da daraltmak için spaces
- drive
alanı tıklayın. nextPageToken
, null
değerini döndürdüğünde,
başka sonuç yok.
Java
Python
Node.js
PHP
Özel dosya özelliğine sahip dosyaları arama
Özel dosya özelliğine sahip dosyaları aramak için properties
veya
bir anahtar ve değer içeren appProperties
arama sorgusu terimi. Örneğin,
özel bir dosya özelliğini arayın. Bu özellik, istekte bulunan uygulamaya özel
8e8aceg2af2ge72e78
değerine sahip additionalID
:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
Daha fazla bilgi için Özel dosya ekleme özellikleri hakkında daha fazla bilgi edinin.
Belirli bir etikete veya alan değerine sahip dosyaları arama
Belirli etiketlere sahip dosyaları aramak için labels
arama sorgusu terimini kullanın.
etiket kimliği oluşturabilirsiniz. Örnek: 'labels/LABEL_ID' in
labels
. Başarılı olursa yanıt gövdesi,
etiketi uygulanır.
Belirli bir etiket kimliği olmayan dosyaları aramak için: Not
'labels/LABEL_ID' in labels
.
Dosyaları belirli alan değerlerine göre de arayabilirsiniz. Örneğin,
metin değerine sahip dosyaları aramak için kullanılır:
labels/LABEL_ID.text_field_id ='TEXT'
Daha fazla bilgi için Belirli bir etikete veya alana sahip dosyaları arama bölümüne bakın değeri için de doğru olduğundan emin olun.
Koleksiyonda ara
files.list
çağrısı yapan aramalar
Varsayılan olarak corpora
/user
. Aramak için
domain
ile paylaşılan dosyalar gibi diğer derlemeler için corpora
parametresinden sonra bir değer girin.
Eksik sonuçlar olsa da tek bir sorguda birden çok topluluk aranabilir
dosya çok büyükse döndürülebilir. incompleteSearch
ise
true
hatası verildiyse tüm dokümanlar döndürülmedi. Bu
gibi farklı bir topluluk seçerek sorgunuzu daraltmanız gerekir.
user
veya drive
.
İlgili konular
- Ortak Drive arama
- Arama sorgusu terimleri ve operatörleri
- Google Workspace ve Google Drive tarafından desteklenen MIME türleri
- Roller ve izinler
- Belirli bir etikete veya alan değerine sahip dosyaları arama