Untuk menampilkan kolom yang tepat yang Anda butuhkan, dan meningkatkan performa, gunakan fields
dalam panggilan metode Anda.
Secara {i>default<i}, server mengirimkan kembali
serangkaian bidang khusus untuk sumber daya yang
kueri. Misalnya, files.get
mungkin hanya menampilkan id
, name
, dan mimeType
untuk
Referensi files
. Tujuan
Metode permissions.get
menampilkan
kumpulan isian {i>default<i} yang berbeda untuk
Resource permissions
.
Setelah server memproses permintaan valid yang menyertakan kueri fields
parameter ini, parameter akan mengirimkan kembali kode status HTTP 200 OK
, bersama dengan
layanan otomatis dan data skalabel. Jika parameter kueri kolom mengalami error atau tidak valid,
server menampilkan kode status HTTP 400 Bad Request
, bersama dengan error
yang menyatakan apa yang salah dengan pilihan {i>field<i} Anda. Misalnya,
files.list(fields='files(id,capabilities,canAddChildren)')
menghasilkan error
"Pemilihan kolom canAddChildren tidak valid." 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 kuerikan. Misalnya, untuk melihat
yang dapat Anda tampilkan untuk file, lihat dokumentasi resource files
.
Aturan format parameter kolom
Format nilai parameter permintaan kolom secara longgar didasarkan pada XPath
sintaksis. 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 berada dalam koloma
, misalnya'capabilities/canDownload'
. Untuk informasi selengkapnya, lihat Mengambil kolom dari bertingkat resource.Gunakan sub-pemilih untuk meminta satu set sub-isian dari {i>array <i}atau objek dengan menempatkan ekspresi dalam tanda kurung "()". Misalnya,
'permissions(id)'
hanya menampilkan ID izin untuk setiap elemen dalam {i>permissions<i}.Untuk menampilkan semua kolom dalam objek, gunakan tanda bintang sebagai karakter pengganti dalam kolom pilihan. Misalnya,
'permissions/permissionDetails/*'
memilih semua detail izin yang tersedia per izin. Perhatikan bahwa penggunaan karakter pengganti ini dapat berdampak negatif pada performa permintaan.
Tampilkan contoh
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
Ketika sebuah {i>field<i} merujuk ke sumber daya lain, Anda bisa menentukan {i>field<i} mana dari resource bertingkat harus diambil.
Misalnya, untuk mengambil kolom role
(resource bertingkat) dari 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 lapisan bertingkat resource Andachanges.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
Permintaan
Dalam contoh ini, kami menyediakan 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" } ] }