2012-06-26 17 views
13

Ich habe einen Backend-Server, der eine Datei auf Google Drive herunterladen muss, die vom Eigentümer für die Öffentlichkeit freigegeben wurde. Unsere Kunden mailen uns den Link und wir erhalten den Link von der E-Mail - keine Benutzeroberfläche ist beteiligt. Das Programm muss die Datei herunterladen oder herunterladen und offline verarbeiten.Wie programmiere ich eine öffentliche Google Drive-Datei programmgesteuert?

Die Google-Beispiele scheinen über die Benutzeroberfläche zu laufen, wo dies ein automatisierter Backend-Prozess ist. Außerdem läuft diese Anwendung auf meinem Server und nicht auf Google App Engine. Muss ich meine App immer noch registrieren, wenn alles, was ich mache, auf Dateien zugreift, die vom Eigentümer für die Öffentlichkeit freigegeben wurden.

Als Referenz, bitte beachten Sie, dass es trivial ist, eine in Dropbox geteilte Datei herunterzuladen/wget.

+0

Können Sie machen es klarer, warum können Sie nicht einfach die URL wget der Client Sie per E-Mail? – Nik

+0

@Nik Die Google Drive-Funktion der URL sendet keine Links zur eigentlichen Datei, sondern zu einer Webseite, auf der Sie die Datei anzeigen können. Es scheint keine Möglichkeit zu geben, die Datei von der URL abzurufen. – Spyplane

Antwort

1

Sie benötigen kein Google SDK, wenn Sie den Link kennen und die Datei öffentlich ist. Verwenden Sie einfach eine HTTP GET-Standardmethode, um die Datei herunterzuladen.

+4

Das funktioniert nicht für mich. Hinweis: Es handelt sich um eine sehr große Datei, die das automatische Antiviren-Scanning nicht überstiegen hat. Daher gab es vor dem Link eine Zwischenseite. – rwired

+0

Was sollten die Anfrageparameter sein? – hitesh141

6

Dies ist eine ältere Frage (und hat bereits eine akzeptierte Antwort), aber Google hat gerade einen neuen Weg angekündigt, um dieses Problem zu lösen, das es ein wenig einfacher zu lösen macht; Im Grunde können Sie jetzt (ab dem 28.11.2012) einen Ordner erstellen und den Ordner öffentlich machen, und dann kann jede Datei, die in den Ordner gestellt wird, über HTTP GET heruntergeladen werden, ohne je eine Zwischenseite zu erhalten (unabhängig von der Dateigröße)). Details:

http://googleappsdeveloper.blogspot.com/2012/11/announcing-google-drive-site-publishing.html