![]() |
TNetHTTP Ordner erstellen auf Nextcloud
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; |
AW: TNetHTTP Ordner erstellen auf Nextcloud
Wird das denn überhaupt unterstüzt?
![]() |
AW: TNetHTTP Ordner erstellen auf Nextcloud
Eine gute Frage, wenn ich Dateien hoch- und runterladen kann, dann muss ich damit doch auch Ordner erstellen können? Oder habe ich einen gedanken Fehler?
|
AW: TNetHTTP Ordner erstellen auf Nextcloud
Ich bin aber auch gerne für andere Tipps offen, allerdings habe ich noch nie andere Komponenten verwendet....
|
AW: TNetHTTP Ordner erstellen auf Nextcloud
Nein, Du musst keine Verzeichnisse erstellen können. Wenn eine Schnittstelle, ein Protokoll irgendetwas nicht hergibt, dann ist das so. Nur weil es woanders geht, muss das nicht überall so sein.
WebDav ist ein Aufsatz. der mehr als nur die HTTP-Grundfunktionalität abbildet, aber HTTP selbst kann sowas (meines Wissens) nicht. Denkfehler würd' ich das nicht nennen, nur eine vom HTTP-Protokoll nicht erfüllte (erfüllbare) Erwartungshaltung. Die Frage, die sich hier stellt ist nicht die nach den zu nutzenden Komponenten, sondern zuerst die nach den von der "Gegenseite" unterstützten Möglichkeiten. Was bietet sie? Danach kannst Du dann entscheiden, mit welchen Komponenten Du ans Ziel kommen möchtest. Egal welche Komponenten Du nutzt: Wenn die Gegenseite / das Protokoll die gewünschte Funktionalität nicht bietet. hilft Dir keine Komponenten dabei, diese Funktionalität zu implementieren. |
AW: TNetHTTP Ordner erstellen auf Nextcloud
Zitat:
![]() ![]() Die REST Api würde Dir womöglich das WebDav Geraffel ersparen, hat aber alles Vor- und Nachteile. |
AW: TNetHTTP Ordner erstellen auf Nextcloud
Danke. Das auf Github habe ich auch versucht zu nutzen, allerdings werden Indy Komponenten verwendet die unter Mac leider nicht laufen.
Es gab ein Pull-request ![]() Habe auch bereits verschiedene *.dylibs verwendet, aber es mag einfach nicht funktionieren. Ich habe gerade gesehen, das die Delphi Hilfe wieder Online ist, ich versuche das mal mit den REST Kompnenten von Delphi, das sieht vielversprechend aus. |
AW: TNetHTTP Ordner erstellen auf Nextcloud
Hab mich zu Früh gefreut....ist wieder OFF
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz