![]() |
Indy-HTTP Get und Zip-Dateien ....
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen !
Ich habe folgendes Problem: per HTTP-Get fordere ich auf einem Server einen zip-Datei an. Der Head-Aufruf gibt mir auch die korrekten Werte zurück, wenn ich aber anschließend die Datei per HTTP-Get herunterladen möchte gibt es die seltsame Fehlermeldung (siehe beigefügte Datei). Der Code:
Delphi-Quellcode:
Die verwendete Indy-Version ist 9, beim IDHttp habe ich HandleRedirects auf True und False
procedure TForm1.cxButton1Click(Sender: TObject);
var BytesKopiert, BytesInsgesamt: int64; lStream: TFileStream; begin BytesKopiert := 0; IdHTTP.Head(cxTextEdit1.Text); BytesInsgesamt := IdHTTP.Response.ContentLength; lStream := TFileStream.Create('c:\test.zip', fmCreate or fmShareDenyNone); idhttp.Request.ContentType := idhttp.Response.ContentType; idHTTP.Get(cxTextEdit1.Text, lstream); IdHTTP.Response.ContentStream.Write(lStream, IdHTTP.Response.ContentStream.Size); FreeAndNil(lStream); end; stehen gehabt und es war in beiden Fällen ohne Erfolg. Hat jemand einen Tipp für mich ? Vielen Dank im vorraus ! |
Re: Indy-HTTP Get und Zip-Dateien ....
Eigentlich strotzt die gesamte Zeile 15 vor Denkfehlern: für die Größe des zu schreibenden Blocks verwendest Du die Größe des Zielblocks (hier wahrscheinlich dasselbe), dann schreibst Du in einen Stream der nur zum Lesen gedacht ist (vielleicht wolltest Du lesen) und schlußendlich ist die ganze Zeile imho überflüssig, da der Stream ja bereits den Inhalt der heruntergeladenen Datei enthält.
|
Re: Indy-HTTP Get und Zip-Dateien ....
Zitat:
deswegen die Denkfehler ;( ): die gezeigte Exception wird durch den Get ausgelöst. Also muss da schon was nicht stimmen. |
Re: Indy-HTTP Get und Zip-Dateien ....
Hallo Rolf,
die Vorgehensweise im Detail sollte so aussehen:
Delphi-Quellcode:
Damit wird die Datei vom Server geholt und lokal geschrieben.
var
s: TStream; begin // ... s := TFileStream.Create('c:\test.zip', fmCreate); try HTTP.Get(Edit.Text, s); finally s.Free; end; end; Grüße vom marabu |
Re: Indy-HTTP Get und Zip-Dateien ....
Hat er aber auch so verwendet... nur daß ein .Head davorkommt und er den ContentType setzt.
Da die beide aber nicht zwingend notwendig sein sollten, würd ichs mal ohne die versuchen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:59 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