Hallo,
ich bin nun schon den ganzen Tag auf der Suche nach einem vernünftigen Beispiel
das es mir ermöglicht mit der
Indy TCP Komponente eine Verbindung zu einem
Server aufzubauen, die Antworten (mehrzeilig) auszuwerten und entsprechend zu antworten.
Ich habe mich dazu durch unterschiedliche Foren gelesen und mir unterschiedliche
Beispiele angeschaut, allerdings war für mich als Anfänger nie etwas dabei
oder die Probleme die sich auch bei mir auftaten wurden in den Threads
nicht beantwortet. Auch die
Indy Webseite war kaum hilfreich und
mit Google bin ich auch nicht fündig geworden.
Bisher habe ich mit folgendem Beispiel herrumexperimentiert:
Code:
program Intro;
{$APPTYPE CONSOLE}
uses
IdTCPClient,
SysUtils;
var
test: string;
begin
with TIdTCPClient.Create do try
Host := 'www.google.com';
Port := 80;
Connect; try
IOHandler.WriteLn('GET / HTTP/1.0'+#13#10);
test := IOHandler.ReadLn;
WriteLn(IntToStr(pos('200',test)));
WriteLn(test);
finally Disconnect; end;
WriteLn('Disconnected.');
finally Free; end;
WriteLn('Press Enter');
ReadLn;
end.
Allerdings war es mir hierbei nur möglich die erste Zeile
mit ReadLn der Antwort des Servers auszuwerten.
Eine Schleife die hier nun ständig ReadLn aufruft
ist sicherlich nicht die beste Lösung.
Ich wäre Euch sehr dankbar wenn Jemand ein kleines Beispiel
Projekt erstellt das variabel auf die Antworten des Servers
reagieren kann. Da ich wie gesagt erst ein paar Tagen mit Delphi
arbeite wäre ein Beispiel-code zum nachvollziehen sehr hilfreich.