7 Stimmen

Programmatisch Inhalte von Drive-Freigabelinks herunterladen

Ich baue eine Anwendung, um automatisch einen Download eines Dateifreigabe mit einem Benutzer auszulösen. Zum Beispiel war es einfach umzusetzen für Dropbox-Links, wie es hier beschrieben ist.

Ich versuche, die gleiche Funktionalität für Google Drive-Links zu implementieren, stoße aber auf Schwierigkeiten. Derzeit nimmt die App den dritten Teil des Links (die Datei-ID) und hängt sie an "https://docs.google.com/uc?export=download&id= " an. Aber das scheint unzuverlässig zu sein, insbesondere da es mindestens 3 verschiedene Link-Formate für freigegebene Dateien gibt, die ich gefunden habe (https://drive.google.com/file/d/xyz, https://docs.google.com/document/d/xyz usw.). Weiß jemand von einer allgemein anwendbaren und zuverlässigen Möglichkeit, die Dateien von Google Drive-Freigabe-Links zu erhalten, ähnlich dem oben für Dropbox skizzierten Prozess?

Schließlich haben wir OAuth-Zugriff auf ein Benutzer-Laufwerk. Für Dateien, die mit ihnen geteilt wurden und deren Freigabeeinstellungen auf "Privat" eingestellt sind (oder alles andere als "Öffentlich im Web" oder "Jeder mit dem Link"), habe ich recherchiert (mit wenig Erfolg), ob es möglich ist, diese Dateien im Namen des OAuth-authentifizierten Benutzers herunterzuladen - hat jemand irgendwelche Einblicke dazu?

Jeder Einblick/Vorschlag würde sehr geschätzt werden.

[Update] Die "privaten" freigegebenen Dateien können aus dem Benutzerlaufwerk heruntergeladen werden - sie werden automatisch zum 'Mit mir geteilt'-Ordner hinzugefügt, daher benötigen wir nur einen zuverlässigen Weg, um die Datei-ID zu erhalten.

1voto

Msmith Punkte 23

Von meinem Verständnis des Laufwerks aus müssen Sie an verschiedenen Stellen nach verschiedenen Dateitypen suchen:

  • /dokument/: Dokumente
  • /präsentation/: Präsentationen
  • /tabelle/: Tabellen
  • /formulare/: Formulare
  • /zeichnungen/: Zeichnungen

Ansonsten scheint es keinen Weg zu geben, die Dokumente abzurufen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X