Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Datei über HTTP an Webbrowser senden (https://www.delphipraxis.net/109401-datei-ueber-http-webbrowser-senden.html)

GuenterS 29. Feb 2008 17:01


Datei über HTTP an Webbrowser senden
 
Hallo,

ich schreibe mir gerade mit der Indy HTTPServer Komponente einen "eigenen" Webserver, der nur minimale Bedingungen erfüllen muss.


Wenn ich mit einem Webbrowser an die Addresse http://192.168.1.97:82/docs/test.xml sende soll das meine Routine

Delphi-Quellcode:
procedure TMyServer.HttpSrvCommandGet(AThread: TIdPeerThread;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  AResponseInfo.ContentStream := TFileStream.Create('C:\www\docs\testfile.xml', fmShareDenyNone);
end;
zurückliefern.

Leider klappt das nur mit einem eigens geschriebenen Tool, welches einen Stream als Rückgabe erwartet, beim Webbrowser tut sich gar nix. Weder Seite kann nicht angezeigt werden noch eine Fehlermeldung.

Auch frage ich mich, wie ich rausfinden kann ob das Zielsystem zugehört hat.

TurboMartin 29. Feb 2008 17:34

Re: Datei über HTTP an Webbrowser senden
 
Hast du nen Statuscode mitgeschickt?

GuenterS 29. Feb 2008 20:52

Re: Datei über HTTP an Webbrowser senden
 
Weißt Du zufällig auch mit welcher Eigenschaft ich den StatusCode übergeben kann?

Ich habs mal mit ResponseInfo.ResponseNo := 200 probiert, hatte jedoch keine Auswirkungen.

[Nachtrag]
Die Angabe der ResponseNo hatte keine Auswirkung. Schadet aber wahrscheinlich auch nicht. Was aber zum Erfolg geführt hat war die Angabe des Contenttype, so dass der Webbrowser weiß was er mit den ankommenden Daten anfangen soll.

In meinem Fall waren das XML Daten, was eine Angabe wahrscheinlich zwingend vorrausgesetzt hat.
[/Nachtrag]


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz