Die aktuelle Version der Google Drive API ist v3. Die Leistung in Version 3 ist besser, da bei Suchvorgängen nur eine Teilmenge von Feldern zurückgegeben wird. Verwenden Sie die aktuelle Version, sofern Sie die v2-Sammlung nicht benötigen. Wenn Sie Version 2 verwenden, sollten Sie eine Migration zu Version 3 in Betracht ziehen. Informationen zur Migration finden Sie unter Zur Drive API v3 migrieren. Eine vollständige Liste der Unterschiede zwischen den Versionen finden Sie in der Referenz zum Vergleich von Drive API v2 und v3.
Wenn Sie Version 2 weiterhin verwenden möchten, lesen Sie den Leitfaden zur Drive API v2, um zu erfahren, wie einige Anleitungen in den Version 3-Leitfäden für Entwickler von Version 2 geändert werden müssen.
Weitere Informationen zu den Verbesserungen der Drive API v3 finden Sie im folgenden Video, in dem Google-Entwickler das neue API-Design erläutern.
V3-Verbesserungen
Um die Leistung zu optimieren und die Komplexität des API-Verhaltens zu verringern, bietet Version 3 die folgenden Verbesserungen gegenüber der vorherigen API-Version:
- Bei der Suche nach Dateien und geteilten Ablagen werden standardmäßig keine vollständigen Ressourcen zurückgegeben, sondern nur eine Teilmenge häufig verwendeter Felder. Weitere Informationen zu
fields
finden Sie in den Artikeln zurfiles.list
-Methode und zurdrives.list
-Methode. - Für fast alle Methoden, die eine Antwort zurückgeben, ist jetzt der Parameter
fields
erforderlich. Eine Liste aller Methoden, für diefields
erforderlich ist, finden Sie in der Drive API-Referenz. - Ressourcen mit doppelten Funktionen wurden entfernt. Beispiele:
- Die Methode
files.list
bietet dieselbe Funktionalität wie die SammlungenChildren
undParents
. Daher werden sie aus Version 3 entfernt. - Die
Realtime.*
-Methoden wurden entfernt.
- Die Methode
- App-Daten werden standardmäßig nicht in Suchergebnissen zurückgegeben. In Version 2 können Sie den Bereich
drive.appdata
festlegen. Die Methode gibt Anwendungsdaten aus der Methodefiles.list
und der Methodechanges.list
zurück, was jedoch die Leistung beeinträchtigt. In Version 3 legen Sie den Bereichdrive.appdata
fest und legen außerdem den Abfrageparameterspaces=appDataFolder
fest, um Anwendungsdaten anzufordern. - Für alle Aktualisierungsvorgänge wird PATCH anstelle von PUT verwendet.
- Verwenden Sie zum Exportieren von Google-Dokumenten die Methode
files.export
. - Das Verhalten der Methode
changes.list
ist anders. Verwenden Sie anstelle von Änderungs-IDs undurchsichtige Seitentokens. Rufen Sie zuerst die Methodechanges.getStartPageToken
für den Anfangswert auf, um die Sammlung von Änderungen abzufragen. Bei nachfolgenden Abfragen gibt die Methodechanges.list
den WertnewStartPageToken
zurück. - Aktualisierungsmethoden lehnen jetzt Anfragen ab, in denen nicht beschreibbare Felder angegeben sind.
- Die Felder
exportFormats
undimportFormats
der Version 2 in der Ressourceabout
sind Listen zulässiger Import- oder Exportformate. In Version 3 sind das MIME-Typ-Zuordnungen von möglichen Zielen zu allen unterstützten Importen oder Exporten. - Die v2-Aliasse
appdata
undappfolder
sind in v3 jetztappDataFolder
. - Die Ressource
properties
wird aus Version 3 entfernt. Die Ressourcefiles
hat das Feldproperties
, das echte Schlüssel/Wert-Paare enthält. Das Feldproperties
enthält öffentliche Attribute und das FeldappProperties
private Attribute. Das Sichtbarkeitsfeld ist daher nicht erforderlich. - Das Feld
modifiedTime
in der Ressourcefiles
wird aktualisiert, wenn die Datei zuletzt geändert wurde. In Version 2 war das FeldmodifiedDate
nur bei der Aktualisierung änderbar, wenn Sie das FeldsetModifiedDate
festgelegt haben. - Das Feld
viewedByMeTime
in der Ressourcefiles
wird nicht automatisch aktualisiert. - Wenn Sie Google Docs-Formate importieren möchten, legen Sie das entsprechende Ziel-
mimeType
im Ressourcen-Body fest. In Version 2 legen Sie?convert=true
fest. - Importvorgänge geben einen 400-Fehler zurück, wenn das Format nicht unterstützt wird.
- Leser und Kommentatoren können keine Berechtigungen sehen.
- Der Alias
me
für Berechtigungen wird entfernt. - Einige Funktionen waren als Teil der Anforderungsressource verfügbar, sind aber stattdessen als Anforderungsparameter verfügbar. Beispiel:
- In Version 2 können Sie mit
children.delete
eine untergeordnete Datei aus einem übergeordneten Ordner entfernen. - In Version 3 verwenden Sie
files.update
für das untergeordnete Element mit?removeParents=parent_id
in der URL.
- In Version 2 können Sie mit
Weitere Unterschiede
Felder und Parameternamen sind in Version 3 unterschiedlich. Beispiele:
- Das Attribut
name
ersetzttitle
in der Ressourcefiles
. Time
ist das Suffix für alle Datums- und Zeitfelder anstelle vonDate
.- Bei Listenoperationen wird das Feld
items
nicht für die Ergebnismenge verwendet. Der Ressourcentyp enthält ein Feld für die Ergebnisse (z. B.files
oderchanges
).