Entwickler-Ecke
Internet / Netzwerk - Download von HiDrive - WebDAV
Klaus Müller - Di 07.01.20 12:15
Titel: Download von HiDrive - WebDAV
Hallo Programmierer,
Ich brauche in einen Programm ein Download von einem HiDrive:
Hier der Link:
https://my.hidrive.com/share/89eadvtypb
Dort ist eine Datei "Test.txt"
die würde ich gerne laden.
Habe das früher einmal mit folgender Funktion gemacht:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| function DownloadFile(URL: widestring; Path: string): Boolean; lStream:=TFileStream.Create(Ziel, fmCreate or fmShareDenyNone); try Try fMain.IdHTTP.Get(Http, lStream); Result:= True; except ShowMessage(fMain.IdHTTP.ResponseText); Result:= False; End; finally lStream.Free; End; |
Nur leider funktioniert das nicht.
Wer hat hier einen Vorschlag die man das hinbekommt?
Moderiert von Th69: Delphi-Tags hinzugefügt
jasocul - Di 07.01.20 12:26
Klaus Müller hat folgendes geschrieben : |
Nur leider funktioniert das nicht. |
Was funktioniert denn nicht? Gibt es eine Fehlermeldung? Bist du schon mit dem Debugger durchgegangen? ...
Und bitte den Source in Delphi-Tags packen.
Klaus Müller - Di 07.01.20 16:39
Hallo Th69, die Fehlermeldung ist: "Error" mehr kommt da nicht, kann aber auch nicht gehn da da das HiDrive ein WebDAV zugriff bereitstellt.
Gruß
Klaus
Moderiert von Th69: Vollzitat entfernt.
Gausi - Di 07.01.20 17:17
Ist mit den SSL-Libraries alles in Ordnung? Wenn das "früher" mal geklappt hat und jetzt nicht mehr, liegt es vielleicht daran, dass der Server mittlerweile umgestellt wurde? :gruebel:
Wenn ich mit den neueren THttpClient (von Delphi, nicht Indy) den Link im ersten Posting aufrufe (damit gibt es keine Probleme in Richtung SSL), dann bekomme ich ein HTML-Dokument, in dem im Wesentlichen drinsteht, dass ohne JavaScript im Browser dort nichts läuft.
Th69 - Di 07.01.20 18:14
Hallo,
du benötigst dafür einen direkten Download-Link (URL). Hast du denn bei HiDrive die einzelne Datei freigegeben oder aber den Ordner "Test"?
So genau blicke ich bei dem Code von der Seite auch nicht durch (aber es scheint per JavaScript und Ajax die Datei "Test.txt" geöffnet werden zu können, aber die eingebettete JS-Datei
hdshare.js [
https://my.hidrive.com/share/v1.31.1/js/hdshare.js] ist - wohl auch aus Performance- und Verschleierungsgründen - sehr unleserlich).
PS: Ich hatte nur die Delphi-Tags hinzugefügt,
jasocul [
https://entwickler-ecke.de/user_jasocul.html] hatte dir geantwortet. ;-)
Klaus Müller - Di 07.01.20 18:20
Ich habe den Ordner Freigegeben.
Moderiert von Th69: Vollzitat entfernt.
jasocul - Mi 08.01.20 09:21
Ich habe das bei mir mal mit einer Datei-Freigabe getestet. Auch dabei wird ein Java-Script erzeugt und entspricht somit keinem direkten Download-Link.
jaenicke - Mi 08.01.20 10:07
Dort wird offenbar OAuth oder eine ähnliche Authentifizierung verwendet. Dadurch braucht man die vorherigen Anfragen, die der Browser durch das Aufrufen der Webseite macht, damit der direkte Downloadlink funktioniert, da der Authentifizierungsheader gesetzt sein muss.
Was sagt denn der Support? Der ist bei Strato doch gut erreichbar.
Klaus Müller - Mi 08.01.20 11:25
jaenicke hat folgendes geschrieben : |
Dort wird offenbar OAuth oder eine ähnliche Authentifizierung verwendet. Dadurch braucht man die vorherigen Anfragen, die der Browser durch das Aufrufen der Webseite macht, damit der direkte Downloadlink funktioniert, da der Authentifizierungsheader gesetzt sein muss.
Was sagt denn der Support? Der ist bei Strato doch gut erreichbar. |
Hallo Jaenicke,
Strato gibt kein Delphi Support.
Gruß
Klaus
jaenicke - Mi 08.01.20 18:25
Klaus Müller hat folgendes geschrieben : |
Strato gibt kein Delphi Support. |
Das hat ja mit Delphi nichts zu tun. Ein Beispiel aus einer anderen Sprache nach Delphi zu übersetzen ist ja das geringste Problem.
Da Hidrive ja offenbar WebDav unterstützt und es entsprechende Komponenten günstig für Delphi gibt, wäre das z.B. vielleicht eine Möglichkeit.
Da stehen ja in der Doku noch andere Protokolle wie SMB... irgendetwas davon wird ja gehen.
Klaus Müller - Do 09.01.20 13:02
Hallo Sebastian,
Ich brauch eine Funktion in Delphi (Download URL) die in meinem Programm verwendet wird.
Strato(HiDrive), Microsoft (OneDrive), Google (Google Drive) und weitere bitten alle Programme an diese Synchronisieren ein Verzeichnis vom Lokalen Rechner mit dem Cloud Drive.
Ich will aber über die Freigabe von einem Ordner auf die darin befindlichen Daten zugreifen, sieh an Anfang und dort eine Datei herunterladen.
Gruß
Klaus
Sinspin - Fr 10.01.20 12:15
Hallo Klaus,
ich schließe mich
jaenicke an. Wende dich einfach an Strato und frage nach einem Beispiel für den Zugriff via WebDav mit irgend einer Programmiersprache oder irgend einem Programm. Wenn du den Link oder die Anweisungen für WebDav hast, bist du vermutlich schlauer als jetzt und wir kommen hier weiter ;-)
Klaus Müller - Mo 13.01.20 18:29
Sinspin hat folgendes geschrieben : |
Hallo Klaus,
ich schließe mich jaenicke an. Wende dich einfach an Strato und frage nach einem Beispiel für den Zugriff via WebDav mit irgend einer Programmiersprache oder irgend einem Programm. Wenn du den Link oder die Anweisungen für WebDav hast, bist du vermutlich schlauer als jetzt und wir kommen hier weiter ;-) |
Hallo Ihr,
Also die Anfrage an Strato läuft, dauert ein paar Tage bis die antworten, mit Delphi kenne sich da nur ein paar aus.
Gruß
Klaus Müller
jaenicke - Di 14.01.20 06:21
Klaus Müller hat folgendes geschrieben : |
mit Delphi kenne sich da nur ein paar aus. |
Darum stelle ich solche Fragen immer unabhängig von der Programmiersprache. Aber wenn es eine Antwort direkt für Delphi gibt, ist es natürlich am einfachsten.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!