Vergleich der Drive APIs Version 2 und Version 3

Die neueste Version der Google Drive API ist Version 3. Die Leistung in Version 3 ist besser, weil gibt nur einen Teil der Felder zurück. Verwenden Sie die aktuelle Version, es sei denn, Sie benötigen sie der v2-Sammlung. Wenn Sie Version 2 verwenden, sollten Sie zu v3 migrieren. Informationen zur Migration finden Sie unter Zur Drive API Version 3 migrieren. Eine vollständige Liste der Versionsunterschiede finden Sie unter Vergleich der Drive API Version 2 und Version 3 Referenz.

Wenn Sie Version 2 weiter verwenden möchten, lesen Sie in der Änderungsvereinbarung Guide to Drive API v2 (Leitfaden zur Drive API Version 2) nach, wie einige Anleitungen in Version 3 Leitfäden für Version 2-Entwickler geändert werden müssen.

Weitere Informationen zu den Verbesserungen für Drive API v3 finden Sie in der folgendes Video von Google-Entwicklern, in dem das neue API-Design besprochen wird.

V3-Verbesserungen

Um die Leistung zu optimieren und die Komplexität des API-Verhaltens zu reduzieren, bietet Version 3 diese Verbesserungen gegenüber der vorherigen API-Version:

  • Bei der Suche nach Dateien und geteilten Ablagen werden standardmäßig keine vollständigen Ressourcen zurückgegeben. wird nur ein Teil der häufig verwendeten Felder zurückgegeben. Weitere Informationen zu fields, siehe die Methode files.list und die Methode drives.list.
  • Fast alle Methoden, die eine Antwort zurückgeben, erfordern jetzt das fields . Eine Liste aller Methoden, die fields erfordern, finden Sie in der Referenz zur Drive API
  • Ressourcen mit doppelten Funktionen wurden entfernt. Hier einige Beispiele:
    • Die Methode files.list bietet dieselben Funktionen wie die Methode Die Sammlungen Children und Parents werden daher aus Version 3 entfernt.
    • Die Realtime.*-Methoden wurden entfernt.
  • App-Daten werden bei Suchvorgängen nicht standardmäßig zurückgegeben. In Version 2 können Sie die drive.appdata und gibt Anwendungsdaten aus files.list zurück. und changes.list aber die Leistung beeinträchtigt. In Version 3 legen Sie den Bereich drive.appdata fest. Legen Sie außerdem den Abfrageparameter spaces=appDataFolder so fest, Anwendungsdaten.
  • Alle Aktualisierungsvorgänge verwenden PATCH anstelle von PUT.
  • Verwenden Sie zum Exportieren von Google-Dokumenten die files.export-Methode.
  • Das Verhalten der Methode changes.list ist anders. Verwenden Sie anstelle von Änderungs-IDs intransparente Seitentokens. Rufen Sie zum Abfragen der Änderungssammlung zuerst die Methode changes.getStartPageToken für den Anfangswert festlegen. Bei nachfolgenden Abfragen wird changes.list gibt den Wert newStartPageToken zurück.
  • Aktualisierungsmethoden lehnen jetzt Anfragen ab, die nicht beschreibbare Felder enthalten.
  • Die V2-Felder exportFormats und importFormats in der about-Ressourcen enthalten Listen mit zulässigen Import- oder Exportformaten. In Version 3 sind es die MIME-Typzuordnungen mögliche Ziele für alle unterstützten Importe oder Exporte.
  • Die Aliasse appdata und appfolder der Version 2 in Version 3 heißen jetzt appDataFolder.
  • Die Ressource properties wurde aus v3 entfernt. Die Ressource files enthält das Feld properties die echte Schlüssel/Wert-Paare enthält. Das Feld properties enthält „Öffentlich“ und das Feld appProperties private Properties enthält, sodass wird das Feld für die Sichtbarkeit nicht benötigt.
  • Das Feld modifiedTime in der Ressource files wird zuletzt aktualisiert die Datei geändert hat. In Version 2 konnte das Feld modifiedDate nur geändert werden. bei einer Aktualisierung, wenn Sie das Feld setModifiedDate festlegen.
  • Das Feld viewedByMeTime in der Ressource files wird nicht automatisch aktualisieren.
  • Zum Importieren von Google Docs-Formaten müssen Sie die entsprechenden Ziel-mimeType festlegen. im Ressourcentext ein. In Version 2 haben Sie ?convert=true festgelegt.
  • Bei Importvorgängen wird der Fehler 400 zurückgegeben, wenn das Format nicht unterstützt wird.
  • Leser und Kommentatoren können keine Berechtigungen ansehen.
  • Der Alias me für Berechtigungen wurde entfernt.
  • Einige Funktionen waren als Teil der Anfrageressource verfügbar, werden jedoch als Anfrageparameter verfügbar. Beispiel:
    • In Version 2 können Sie children.delete verwenden, um eine untergeordnete Datei aus einem übergeordneten Ordner.
    • In Version 3 verwenden Sie files.update auf der untergeordneten Datei mit ?removeParents=parent_id in der URL.

Weitere Unterschiede

Felder und Parameternamen unterscheiden sich in Version 3. Beispiele:

  • Das Attribut name ersetzt title in der Ressource files.
  • Time ist das Suffix für alle Datums- und Uhrzeitfelder anstelle von Date.
  • Bei Listenvorgängen wird die Ergebnismenge nicht im Feld items verwendet. Die Ressourcentyp stellt ein Feld für die Ergebnisse bereit (z. B. files oder changes).