Einzelnen Beitrag anzeigen

stiftII

Registriert seit: 2. Sep 2009
Ort: Cuxhaven
122 Beiträge
 
#1

HTTP-Statuscode und Header auslesen

  Alt 9. Okt 2009, 11:47
//Sehe gerade das ich das Thema im falschen Bereich erstellt habe. Bitte verschieben, wenn möglich.

Hallo.

Über die Forensuche habe ich diesen Code gefunden(ein wenig abgeändert).

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  responseStream: TFileStream;
  ausgabe:String;
begin
 responseStream := TFileStream.Create('d:\test.txt',fmCreate);
  try
    IdHTTP1.get('http://google.de/');
  except
    on EIdHTTPProtocolException do
      ausgabe:='Fehler!'+#13#10 + IdHTTP1.ResponseText;
    // die anderen Fehler
    on E: Exception do
      ausgabe:='Auch ein Fehler (' + E.ClassName + ')!'+#13#10 + E.Message;
  end;//try
  if (Length(ausgabe)<1) then
    ausgabe:='OK, alles klar'+#13#10 + IdHTTP1.ResponseText;
  ShowMessage(ausgabe);
  responseStream.free;
end;
Ich möchte damit den http-statuscode, und dann, wenn notwendig den http header auslesen.

Beispiel: "http://google.de/"(ohne www) gibt den Statuscode "301 Moved Permanently" zurück, das bedeutet, dass die Website jetz an einer anderen Stelle zu finden ist, diese würde man im http-head finden.

Wenn ich allerdings "IdHTTP1.head('http://google.de/');" ausführe, gibt es immer nur eine "timeout" exception, und nicht den passenden head bereich ;/.

Was mache ich falsch ?, wie kann ich den head in ein string-arry, oder ähnlichem auslesen ?.

Hat sich soeben erledigt idhttp.redirect := true hat mein Problem gelöst

~stift
  Mit Zitat antworten Zitat