Untuk menampilkan kolom yang Anda perlukan dan meningkatkan performa, gunakan parameter kueri fields
dalam panggilan metode Anda.
Secara default, server mengirimkan kembali kumpulan kolom khusus untuk resource yang dikueri. Misalnya, metode files.get
mungkin hanya menampilkan id
, name
, dan mimeType
untuk
resource files
. Metode
permissions.get
menampilkan
kumpulan kolom default yang berbeda untuk resource
permissions
.
Setelah server memproses permintaan valid yang menyertakan parameter kueri fields
, server akan mengirim kembali kode status HTTP 200 OK
, beserta data
yang diminta. Jika parameter kueri kolom memiliki error atau tidak valid, server akan menampilkan kode status HTTP 400 Bad Request
, beserta pesan error yang menyatakan error pada pilihan kolom Anda. Misalnya,
files.list(fields='files(id,capabilities,canAddChildren)')
menghasilkan error
"Pemilihan kolom tidak valid canAddChildren". Parameter kueri kolom yang benar untuk contoh ini adalah files.list(fields='files(id,capabilities/canAddChildren)')
.
Untuk menentukan kolom yang dapat ditampilkan menggunakan parameter fields
, kunjungi
halaman dokumentasi resource yang Anda kueri. Misalnya, untuk melihat kolom yang bisa Anda kembalikan untuk file, lihat dokumentasi resource files
.
Aturan format parameter kolom
Format parameter value permintaan kolom secara longgar berdasarkan sintaksis XPath. Berikut adalah aturan pemformatan untuk parameter fields
. Semua
aturan ini menggunakan contoh yang terkait dengan metode files.get
.
Gunakan daftar yang dipisahkan koma untuk memilih beberapa kolom, seperti
'name, mimeType'
.Gunakan
a/b
untuk memilih kolomb
yang bertingkat di koloma
, seperti'capabilities/canDownload'
. Untuk informasi selengkapnya, lihat Mengambil kolom resource bertingkat.Gunakan sub-pemilih untuk meminta kumpulan sub-kolom tertentu dari array atau objek dengan menempatkan ekspresi dalam tanda kurung "()". Misalnya,
'permissions(id)'
hanya menampilkan ID izin untuk setiap elemen dalam array izin.Untuk menampilkan semua kolom dalam sebuah objek, gunakan tanda bintang sebagai karakter pengganti dalam pemilihan kolom. Misalnya,
'permissions/permissionDetails/*'
memilih semua kolom detail izin yang tersedia per izin. Perlu diperhatikan bahwa penggunaan karakter pengganti ini dapat menyebabkan dampak performa negatif pada permintaan.
Tampilkan contoh
Kirim Permintaan
Dalam contoh ini, kami memberikan parameter jalur ID file dan beberapa kolom sebagai parameter kueri dalam permintaan. Respons akan menampilkan nilai kolom untuk ID file.
GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=name,starred,shared
Respons
{ "name": "File1", "starred": false, "shared": true } }
Mengambil kolom resource bertingkat
Jika kolom mengacu pada resource lain, Anda dapat menentukan kolom resource bertingkat yang harus diambil.
Misalnya, untuk mengambil kolom role
(resource bertingkat) dari resource permissions
, gunakan salah satu opsi berikut:
permissions.get
denganfields=role
ataufields=*
.files.get
denganfields=permissions(role)
ataufields=permissions/role
.files.get
denganfields=permissions
untuk menyiratkan semua kolom resource bertingkat.changes.list
denganfields=changes(file(permissions(role)))
.
Untuk mengambil beberapa kolom, gunakan daftar yang dipisahkan koma. Misalnya,
files.list
dengan fields=files(id,name,createdTime,modifiedTime,size)
.
Tampilkan contoh
Kirim Permintaan
Dalam contoh ini, kami memberikan parameter jalur ID file dan beberapa kolom, termasuk kolom tertentu dari resource izin bertingkat, sebagai parameter kueri dalam permintaan. Respons akan menampilkan nilai kolom untuk ID file.
GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=name,starred,shared,permissions(kind,type,role)
Respons
{ "name": "File1", "starred": false, "shared": true, "permissions": [ { "kind": "drive#permission", "type": "user", "role": "owner" } ] }