Hallo
DP,
Ich finde im Netz erstaunlich wenig Beispiele über Delphi und IdWebdav. Da Webdav von HTTP abgeleitet ist, habe ich einfach mal ein Selbstversuch gestartet und eine kleine Demo-Anwendung geschrieben. Diese soll sich auf einem Server einloggen um eine Datei herunterladen zu können:
Delphi-Quellcode:
procedure TForm5.Button1Click(Sender: TObject);
var webdav: TIdWebDAV;
Request: TStringList;
Response: TMemoryStream;
code:integer;
s:string;
begin
webdav := TIdwebdav.Create;
Response :=TMemoryStream.Create;
Request := TStringList.Create;
try
webdav.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
webdav.Request.BasicAuthentication:= true;
webdav.Request.Username := 'yourname';
webdav.Request.Username := 'Katzeklo';
webdav.AllowCookies := True;
webdav.HandleRedirects := True;
webdav.Request.ContentType := 'application/x-www-form-urlencoded';
webdav.post('https://www.meinzielserver.de/login', Request, Response);
s := webdav.Get('https://www.meinzielserver.de/katzen/katzen.xml');
showmessage(s);
finally
webdav.Free;
Response.Free;
Request.Free;
end;
end;
Aber das Login wird nie ausgeführt, ich lande immer auf der Loginpage. Wie kann ich denn das Login erzwingen ?