Die neueste Version der Google Drive API ist v3. In Version 3 ist die Leistung besser, da bei der Suche nur ein Teil der Felder zurückgegeben wird. Verwenden Sie die aktuelle Version, sofern Sie nicht die Sammlung v2 benötigen. Wenn Sie v2 verwenden, sollten Sie eine Migration zu v3 in Betracht ziehen. Informationen zur Migration finden Sie unter Migration zur Drive API v3. Eine vollständige Liste der Versionsunterschiede finden Sie im Vergleich der Drive API (Version 2 und Version 3).
Wenn Sie Version 2 weiterhin verwenden möchten, finden Sie im Änderungsvereinbarung Leitfaden für Version 2 der Drive API Informationen dazu, wie einige Anleitungen in den Leitfäden für Version 2 für Entwickler der Version 2 geändert werden müssen.
Wenn Sie mehr über die Verbesserungen der Drive API in Version 3 erfahren möchten, sehen Sie sich das folgende Video an, in dem Google-Entwickler das neue API-Design besprechen.
V3-Verbesserungen
Version 3 bietet folgende Verbesserungen im Vergleich zur vorherigen API-Version, um die Leistung zu optimieren und die Komplexität des API-Verhaltens zu verringern:
- Bei der Suche nach Dateien und geteilten Ablagen werden standardmäßig nicht alle Ressourcen zurückgegeben, sondern nur ein Teil der häufig verwendeten Felder. Weitere Informationen zu
fields
finden Sie in den Methodenfiles.list
unddrives.list
. - Fast alle Methoden, die eine Antwort zurückgeben, erfordern jetzt den Parameter
fields
. Eine Liste aller Methoden, diefields
erfordern, finden Sie in der Referenz zur Drive API. - Ressourcen mit doppelten Funktionen wurden entfernt. Beispiele:
- Die Methode
files.list
bietet dieselben Funktionen wie die SammlungenChildren
undParents
. Sie werden daher aus Version 3 entfernt. - Die
Realtime.*
-Methoden wurden entfernt.
- Die Methode
- App-Daten werden bei Suchanfragen standardmäßig nicht zurückgegeben. In v2 können Sie den Bereich
drive.appdata
festlegen. Dadurch werden Anwendungsdaten von der Methodefiles.list
und der Methodechanges.list
zurückgegeben, allerdings verlangsamt dies die Leistung. In v3 legen Sie den Bereichdrive.appdata
und den Abfrageparameterspaces=appDataFolder
fest, um Anwendungsdaten anzufordern. - Bei allen Aktualisierungsvorgängen 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 intransparente Seitentokens. Wenn Sie die Änderungssammlung abfragen möchten, rufen Sie zuerst die Methodechanges.getStartPageToken
für den Anfangswert auf. Bei nachfolgenden Abfragen gibt die Methodechanges.list
den WertnewStartPageToken
zurück. - Aktualisierungsmethoden lehnen jetzt Anfragen ab, die nicht beschreibbare Felder enthalten.
- Die Felder
exportFormats
undimportFormats
der Version 2 in der Ressourceabout
sind Listen der zulässigen Import- oder Exportformate. In Version 3 sind es MIME-Typ-Zuordnungen möglicher Ziele für alle unterstützten Importe oder Exporte. - Die v2-Aliasse
appdata
undappfolder
heißen jetztappDataFolder
in v3. - Die Ressource
properties
wurde aus v3 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, sodass das Feld für die Sichtbarkeit nicht erforderlich ist. - Im Feld
modifiedTime
in der Ressourcefiles
wird aktualisiert, wann das letzte Mal die Datei geändert wurde. In v2 konnte das FeldmodifiedDate
nur bei der Aktualisierung geändert werden, wenn Sie das FeldsetModifiedDate
festgelegt haben. - Das Feld
viewedByMeTime
in der Ressourcefiles
wird nicht automatisch aktualisiert. - Für den Import von Google Docs-Formaten legen Sie im Ressourcentext die entsprechende Ziel-
mimeType
fest. In v2 haben Sie?convert=true
festgelegt. - Wenn das Format nicht unterstützt wird, wird bei Importvorgängen der Fehler 400 zurückgegeben.
- Leser und Kommentatoren können keine Berechtigungen sehen.
- Der
me
-Alias für Berechtigungen wurde entfernt. - Einige Funktionen waren als Teil der Anfrageressource verfügbar, sind aber stattdessen als Anfrageparameter verfügbar. Beispiel:
- In v2 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 v2 können Sie mit
Weitere Unterschiede
Felder und Parameternamen unterscheiden sich in Version 3. Beispiele:
- Das Attribut
name
ersetzttitle
in der Ressourcefiles
. Time
ist das Suffix für alle Datums- und Uhrzeitfelder anstelle vonDate
.- Bei Listenvorgängen wird das Feld
items
nicht verwendet, um den Ergebnissatz zu enthalten. Der Ressourcentyp stellt ein Feld für die Ergebnisse bereit (z. B.files
oderchanges
).