Hallo Zusammen,
ich schreibe eine Anwendung die Platformunabhängig sein soll für den Nextcloud Datei Upload (Win+MacOS).
Dazu habe ich jede menge Beiträge zu den
Indy Komponenten gesehen, leider habe ich keine Möglichkeit gefunden diese ans laufen zu bekommen. Aufgrund der SSL. Bibliothek Problematik....
Ich nutze
THTTPClient u.a. fürs hochladen, komme aber nicht weiter weil ich das
equivalent für das
IndyWebDAV.DAVMakeCollection(URL); zum erstellen von Ordnern nicht kenne.
Die Embarcadero Hilfe ist leider schon eine ewigkeit Offline bzw. funktioniert leider nicht mehr.
Habt ihr ein Vorschlag für mich?
Besten Dank
Delphi-Quellcode:
URL:='
https://'+varServerAdresse+'
/remote.php/webdav/'+varUsername+'
/'+varNeuerOrdner;
IdWebDAV.DAVMakeCollection(
URL);
Hier ist die komplette Function mit den
Indy Komponenten.
Delphi-Quellcode:
function OrdnerErstellen(NachOrdner, NeuerOrdner :
String) :
String;
var
URL :
String;
Ergebnis :
String;
begin
Ergebnis := '
';
NachOrdner := Trim(NachOrdner);
NeuerOrdner := Trim(NeuerOrdner);
IdWebDAV.Request.UserName := varUsername;
IdWebDAV.Request.Password := varPassword;
IdWebDAV.Request.BasicAuthentication := true;
IdSSLIOHandlerSocketOpenSSL.SSLOptions.Method := sslvSSLv23;
//MAC BIG SUR - FUNZT NICHT :-(
IdSSLIOHandlerSocketOpenSSL.SSLOptions.SSLVersions := [sslvSSLv2, sslvSSLv3, sslvTLSv1, sslvTLSv1_1, sslvTLSv1_2];
IdWebDAV.IOHandler := IdSSLIOHandlerSocketOpenSSL;
IdWebDAV.AllowCookies := True;
IdWebDAV.HandleRedirects := True;
IdWebDAV.Request.ContentType := '
application/x-www-form-urlencoded';
URL := '
https://'+varServerAdresse+'
/remote.php/webdav/'+varUsername+'
/'+varNeuerOrdner;
URL := MacSonderzeichenEncode(
URL);
IdWebDAV.DAVMakeCollection(
URL);
Ergebnis:='
Ordner: '+NachOrdner+'
/'+NeuerOrdner +'
wurde erstellt!';
OrdnerErstellen:=Ergebnis;
end;