Guten abend leute,
Ich benutze folgende Funktion um mit der
indy IdHttp komponente post requests zu senden
Code:
procedure TForm1.PostData(lparams : TStringList; post_url, referer: string);
var
i : integer;
str : TStringList;
s : TStrings;
begin
s := TStringList.Create;
str := TStringList.Create;
for i:= 0 to lparams.Count -1 do
begin
str := split(lparams.Strings[i], '&&&');
if str.Count >= 2 then s.Append(str.Strings[0]+'='+str.Strings[1])
else s.Append(str.Strings[0]+'=');
end;
with web do
begin
try
web.Request.Referer := referer;
res := web.Post(post_url, s);
log(web.ResponseText);
log(IntToStr(web.Response.ContentLength));
except
if not(web.Response.ResponseCode = 302) then log('unbekannter Fehler aufgetreten!');
end;
end;
end;
Alles funktioniert auch eigentlich einwandtfrei, bekomme einen 200 statuscode (nach zweimaligem redirect) zurück, Wireshark hat alles korrekt mitgeschnitten und keine probleme zu sehen soweit.
Nun versuche ich allerdings ganz simpel mittels
die response in ein memo zu schreiben.
Im memo befindet sich nur ein eiziges zeichen, das im
ascii satz entweder nicht vorhanden ist oder zumindest hier nicht darstellbar
Es existiert jedoch (wie ja auch schon durch wireshark bestätigt) ein content.
Code:
web.Response.ContentLength
gibt über 6000 zeichen im content an
Wie kann es sein, dass ich nichts (fast nichts) sehe, diese funktion habe ich bereits vor einem Jahr erfolgreich benutzt (allerdings in anderem context)
Wenn weitere infos nötig sind bitte sofort bescheid sagen, ich habe alles so genau wie möglich beschrieben...
Vielen dank schon mal im Voraus
TheThrust