2017-04-16 4 views
0

Sie können nicht ich weiß. Vom docs,Herunterladen von Gdoc-Revisionen von Google Drive API v3

Sobald Sie eine Liste von einer Datei Revisionen erhalten, können Sie den Inhalt einer Revision herunterladen, indem Sie die revisions.get Methode mit dem Parameter alt = Medien aufrufen. Überarbeitungen für Google Docs, Google Tabellen und Google Präsentationen können nicht heruntergeladen werden.

Aber ich würde gerne (pdf) verschiedene Versionen der gleichen Gdoc-Datei basierend auf Datum herunterladen. In der Drive Web App können Sie Versionen anzeigen und drucken oder eine Version auf den Kopf wiederherstellen. Gibt es eine Möglichkeit, die API zu nutzen? Können Sie eine Version wiederherstellen? Dann könnten Sie die Datei exportieren.

Ich suchte das Internet, konnte aber keinen Weg finden.

Ich benutze die Java-Client-API, die mir dies gibt, wenn ich versuche, eine Media-Anfrage zu machen.

{ 
    "code" : 403, 
    "errors" : [ { 
    "domain" : "global", 
    "location" : "alt", 
    "locationType" : "parameter", 
    "message" : "Only files with binary content can be downloaded. Use Export with Google Docs files.", 
    "reason" : "fileNotDownloadable" 
    } ], 
    "message" : "Only files with binary content can be downloaded. Use Export with Google Docs files." 
} 

Aber ich kann es herausfinden, wenn Sie für irgendeine andere API auch antworten können.

Antwort

2

Sieht aus wie ein v3-spezifisches Problem. Ich schlage vor, v2 für diesen bestimmten Anruf zu verwenden. Siehe https://developers.google.com/drive/v2/reference/revisions#resource, wo Sie sehen, dass die Revisionsressource ein Array namens exportLinks enthält. Darin sollten Sie ein Element {"pdf": "https://xxxxxxxx"} finden. Erstellen Sie ein authentifiziertes GET für diese URL.

imho, die bereitgestellten Bibliotheken verursachen so viele Probleme, wie sie lösen. Dies ist ein Beispiel dafür, dass die Bibliothek den Zugriff auf die v2-API maskiert, obwohl die v2-API vollständig unterstützt wird. Also müssen Sie in Ihrem Code das Access Token aus dem Laufwerksdienstobjekt extrahieren, das als http AUTHOURIZATION: Bearer 4a343234we43w43w44-Header festlegen, dann die zwei GET REST-Aufrufe vornehmen, um die Revisionsliste abzurufen und dann die den PDF entsprechende URL in den exportLinks abholen .

+0

Richtig, hab es! Ich habe v3 gewählt, weil ich dachte, dass die neueste Version den neuen Funktionen entspricht. Ich vermute, ich lag falsch. – abhipil

+0

Hey, ich habe die Export-Links benutzt, um das PDF zu bekommen, aber ich bekomme immer die Haupt-Revision, egal welche Revisions-ID ich übergebe. Hast du damit umgegangen? – abhipil

+0

Eine neue Frage zu diesem http://stackoverflow.com/questions/43441317/downloading-gdoc-revisions-from-google-drive-api-v2 veröffentlicht – abhipil

Verwandte Themen