AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke indy IdHttp post response nicht lesbar
Thema durchsuchen
Ansicht
Themen-Optionen

indy IdHttp post response nicht lesbar

Ein Thema von TheThrust · begonnen am 29. Jul 2011 · letzter Beitrag vom 29. Jul 2011
Antwort Antwort
TheThrust

Registriert seit: 30. Jan 2008
19 Beiträge
 
#1

indy IdHttp post response nicht lesbar

  Alt 29. Jul 2011, 19:20
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
Code:
memo1.Text := res;
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
Code:
‹
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
  Mit Zitat antworten Zitat
TheThrust

Registriert seit: 30. Jan 2008
19 Beiträge
 
#2

AW: indy IdHttp post response nicht lesbar

  Alt 29. Jul 2011, 19:44
Sorry leute, ich habe die Antwort eben durch weiteres trial and error selbst rausgefunden.

In der init-funktion, die ich für die idhttp komponente geschrieben hatte, habe ich auch content encoding erlaubt.
Code:
idhttp.Request.AcceptEncoding := 'gzip,deflate,sdch';
Also habe ich gzip-ten oder anders komprimierten content bekommen, der natürlich erst dekomprimiert werden müsste.

Solange ich nicht explizit eine AcceptEncoding erlaube funktioniert alles super!

TheThrust
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 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