"Error reading Data from Socket" wenn FPHttpClient-Antwort bestimmte Größe überschreitet

Alle Fragen zur Netzwerkkommunikation
Antworten
lazfrage
Beiträge: 2
Registriert: Di 21. Jul 2020, 17:35

"Error reading Data from Socket" wenn FPHttpClient-Antwort bestimmte Größe überschreitet

Beitrag von lazfrage »

Ich benutze folgendes Script, um Daten von einer API anzufordern. Das funktioniert auch gut, allerdings nur wenn die Antwort eine bestimmte Größe (~200 Text-Zeilen) nicht überschreitet, ansonsten bekomme ich eine "Error reading Data from Socket"-Exception zurück. Hat jemand eine Idee?

UPDATE:
Ich habe es mit Indys idhttp probiert, hier geht es problemlos. Es liegt also nicht an der API, am Server o.ä.

Code: Alles auswählen

 url := APIUrl+'/positions';  //HTTPS-URL
   With TFPHttpClient.Create(Nil) do
  try
    AddHeader('Content-Type', 'application/json; charset=UTF-8');
    AddHeader('Accept', 'application/json; charset=UTF-8');
    AddHeader('VERSION', '2');
    AddHeader('X-API-KEY', APIKey);
    AddHeader('X-SECURITY-TOKEN',token);
    AddHeader('CST', cst);
    responseData := Get(url);

  finally
   Free;
  end;
  memo1.lines.text:=responseData;         
  
Zuletzt geändert von lazfrage am Mi 22. Jul 2020, 13:02, insgesamt 3-mal geändert.

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: "Error reading Data from Socket" wenn FPHttpClient-Antwort bestimmte Größe überschreitet

Beitrag von Warf »

Mal die stream funktion von FPHttpClient probiert?

Code: Alles auswählen

var respStream: TStringStream;
...
  respStream := TStringStream.Create('');
  try
    request.Get(url, respStream);
    // deine response liegt jetzt im respstream
  finally
    respStream.Free
  end;

lazfrage
Beiträge: 2
Registriert: Di 21. Jul 2020, 17:35

Re: "Error reading Data from Socket" wenn FPHttpClient-Antwort bestimmte Größe überschreitet

Beitrag von lazfrage »

Warf hat geschrieben:
Di 21. Jul 2020, 19:37
Mal die stream funktion von FPHttpClient probiert?

Selber Fehler...

Antworten