Google Drive API'nin en son sürümü v3'tür. Aramalar yalnızca alanların bir alt kümesini döndürdüğünden, v3'teki performans daha iyidir. v2 koleksiyonuna ihtiyacınız yoksa geçerli sürümü kullanın. v2 kullanıyorsanız v3'e taşımayı düşünebilirsiniz. Taşıma işlemi için Drive API v3'e taşıma başlıklı makaleyi inceleyin. Sürüm farklılıklarının tam listesi için Drive API v2 ve v3 karşılaştırma referansına bakın.
v2'yi kullanmaya devam etmek istiyorsanız v3 kılavuzlarındaki bazı talimatların v2 geliştiricileri için nasıl değiştirilmesi gerektiğini öğrenmek için Drive API v2 değişikliği rehberi bölümüne bakın.
Drive API v3 iyileştirmeleri hakkında daha fazla bilgi edinmek için Google mühendislerinin yeni API tasarımını ele alan aşağıdaki videoyu izleyebilirsiniz.
V3 iyileştirmeleri
v3, performansı optimize etmek ve API davranışı karmaşıklığını azaltmak için önceki API sürümüne göre şu iyileştirmeleri sağlar:
- Dosya ve ortak Drive'lar için yapılan aramalar varsayılan olarak tüm kaynakları döndürmez. Varsayılan olarak, yaygın olarak kullanılan alanların yalnızca bir kısmı döndürülür.
fields
hakkında daha fazla bilgi içinfiles.list
yöntemini vedrives.list
yöntemini inceleyin. - Yanıt döndüren yöntemlerin çoğu artık
fields
parametresini gerektirmektedir.fields
gerektiren tüm yöntemlerin listesi için Drive API referansına bakın. - Yinelenen özelliklere sahip kaynaklar kaldırıldı. Birkaç örnek:
files.list
yöntemi,Children
veParents
koleksiyonlarıyla aynı işlevleri yerine getirdiğinden v3'ten kaldırılır.Realtime.*
yöntemleri kaldırıldı.
- Uygulama Verileri aramalarda varsayılan olarak döndürülmez. v2'de
drive.appdata
kapsamını ayarlayabilirsiniz. Bu durumda,files.list
yönteminden vechanges.list
yönteminden uygulama verileri döndürür, ancak performansı yavaşlatır. v3'te,drive.appdata
kapsamını vespaces=appDataFolder
sorgu parametresini uygulama verilerini isteyecek şekilde ayarladınız. - Tüm güncelleme işlemleri PUT yerine PATCH yöntemini kullanır.
- Google Dokümanlarını dışa aktarmak için
files.export
yöntemini kullanın. changes.list
yönteminin davranışı farklıdır. Değişiklik kimlikleri yerine opak sayfa jetonları kullanın. Değişiklik koleksiyonunu yoklamak için önce başlangıç değeri içinchanges.getStartPageToken
yöntemini çağırın. Sonraki sorgular içinchanges.list
yöntemi,newStartPageToken
değerini döndürür.- Güncelleme yöntemleri artık yazılabilir olmayan alanları belirten istekleri reddediyor.
about
kaynağındaki v2exportFormats
veimportFormats
alanları, izin verilen içe veya dışa aktarma biçimlerinin listeleridir. v3'te ise bunlar, desteklenen tüm içe veya dışa aktarma işlemleriyle olası hedeflerin MIME türü eşlemeleridir.- v2
appdata
veappfolder
takma adları artık v3'teappDataFolder
. properties
kaynağı v3'ten kaldırıldı.files
kaynağında gerçek anahtar/değer çiftlerini içerenproperties
alanı bulunur.properties
alanı, herkese açık mülkleri,appProperties
alanı ise özel mülkleri içerdiğinden görünürlük alanına gerek yoktur.files
kaynağındakimodifiedTime
alanı, herhangi biri dosyayı en son değiştirdiğinde güncellenir. v2'demodifiedDate
alanı yalnızcasetModifiedDate
alanını ayarlarsanız güncelleme sırasında değiştirilebilir.files
kaynağındakiviewedByMeTime
alanı otomatik olarak güncellenmez.- Google Dokümanlar biçimlerini içe aktarmak için kaynak gövdesinde uygun hedefi (
mimeType
) ayarlarsınız. v2'de?convert=true
değerini ayarladınız. - Biçim desteklenmiyorsa içe aktarma işlemleri 400 hatası döndürür.
- Okuyucular ve yorumcular izinleri görüntüleyemez.
- İzinler için
me
takma adı kaldırıldı. - Bazı işlevler, istek kaynağının bir parçası olarak kullanılabilir ancak bunun yerine istek parametresi olarak kullanılabilir. Örneğin:
- v2'de, bir üst klasörden alt dosyayı kaldırmak için
children.delete
kullanabilirsiniz. - Sürüm 3'te, URL'de
?removeParents=parent_id
ile alt öğedefiles.update
kullanırsınız.
- v2'de, bir üst klasörden alt dosyayı kaldırmak için
Diğer farklılıklar
Alanlar ve parametre adları v3'te farklıdır. Buna örnek olarak aşağıdakiler verilebilir:
name
özelliği,files
kaynağındakititle
öğesinin yerini alır.Time
, tüm tarih ve saat alanları içinDate
yerine sonektir.- Liste işlemleri, sonuç grubunu içermek için
items
alanını kullanmaz. Kaynak türü, sonuçlar için bir alan sağlar (ör.files
veyachanges
).