Panduan perbandingan Drive API v2 dan v3

Versi Google Drive API terbaru adalah v3. Performa di v3 lebih baik karena pencarian hanya mengembalikan sebagian bidang. Gunakan versi saat ini kecuali jika Anda memerlukan kumpulan v2. Jika Anda menggunakan v2, pertimbangkan bermigrasi ke v3. Untuk melakukan migrasi, lihat Bermigrasi ke Drive API v3. Untuk mengetahui daftar lengkap perbedaan versi, lihat perbandingan Drive API v2 dan v3 .

Jika Anda ingin terus menggunakan v2, lihat amendemen Panduan untuk Drive API v2 untuk mempelajari bagaimana beberapa petunjuk di v3 panduan harus diubah untuk pengembang v2.

Untuk mempelajari lebih lanjut peningkatan Drive API v3, Anda dapat menonton video berikut oleh teknisi Google yang membahas desain API baru.

Peningkatan V3

Untuk mengoptimalkan performa dan mengurangi kompleksitas perilaku API, v3 menyediakan peningkatan dibandingkan versi API sebelumnya:

  • Secara default, penelusuran file dan drive bersama tidak menampilkan resource lengkap, hanya sebagian kolom yang umum digunakan yang akan ditampilkan. Untuk mengetahui detail selengkapnya tentang fields, lihat metode files.list dan metode drives.list.
  • Hampir semua metode yang menampilkan respons sekarang memerlukan fields . Untuk daftar semua metode yang memerlukan fields, lihat Referensi Drive API.
  • Resource yang memiliki kemampuan duplikat telah dihapus. Beberapa contohnya:
    • Metode files.list memiliki fungsi yang sama dengan Koleksi Children dan Parents, sehingga akan dihapus dari v3.
    • Metode Realtime.* telah dihapus.
  • Data Aplikasi tidak ditampilkan secara default dalam penelusuran. Pada v2, Anda bisa menyetel drive.appdata cakupan, dan menampilkan data aplikasi dari files.list dan changes.list , namun akan memperlambat performa. Di v3, Anda menetapkan cakupan drive.appdata, dan tetapkan parameter kueri spaces=appDataFolder untuk meminta data aplikasi.
  • Semua operasi update menggunakan PATCH, bukan PUT.
  • Untuk mengekspor Google Dokumen, gunakan Metode files.export.
  • Perilaku metode changes.list berbeda. Alih-alih mengubah ID, gunakan token halaman buram. Untuk melakukan polling pada kumpulan perubahan, panggil changes.getStartPageToken untuk nilai awal. Untuk kueri berikutnya, changes.list akan menampilkan nilai newStartPageToken.
  • Metode update kini menolak permintaan yang menentukan kolom yang tidak dapat ditulis.
  • Kolom exportFormats dan importFormats v2 di Resource about adalah daftar format impor atau ekspor yang diizinkan. Pada v3, ini adalah peta jenis MIME target yang mungkin untuk semua impor atau ekspor yang didukung.
  • Alias appdata dan appfolder v2 sekarang menjadi appDataFolder di v3.
  • Resource properties dihapus dari v3. Tujuan Resource files memiliki kolom properties yang berisi pasangan nilai kunci sebenarnya. Kolom properties berisi kolom publik dan kolom appProperties berisi properti pribadi, jadi bidang visibilitas tidak diperlukan.
  • Kolom modifiedTime di resource files diperbarui terakhir kali ada orang yang mengubah {i>file<i}. Pada v2, kolom modifiedDate hanya dapat diubah pembaruan jika Anda menetapkan kolom setModifiedDate.
  • Kolom viewedByMeTime di resource files tidak otomatis memperbarui.
  • Untuk mengimpor format Google Dokumen, Anda menetapkan mimeType target yang sesuai dalam isi resource. Di v2, Anda menetapkan ?convert=true.
  • Operasi impor menampilkan error 400 jika formatnya tidak didukung.
  • Pembaca dan pengomentar tidak dapat melihat izin.
  • Alias me untuk izin dihapus.
  • Beberapa fungsi tersedia sebagai bagian dari resource permintaan, tetapi yang tersedia sebagai parameter permintaan. Misalnya:
    • Di v2, Anda dapat menggunakan children.delete untuk menghapus file turunan dari folder induk.
    • Di v3, Anda menggunakan files.update pada turunan dengan ?removeParents=parent_id di URL.

Perbedaan lainnya

Kolom dan nama parameter berbeda di v3. Contohnya antara lain:

  • Properti name menggantikan title di resource files.
  • Time adalah akhiran untuk semua kolom tanggal dan waktu, bukan Date.
  • Operasi daftar tidak menggunakan kolom items untuk memuat kumpulan hasil. Tujuan jenis resource menyediakan kolom untuk hasil (seperti files atau changes).