AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Fehler 12030 beim Abruf über TNetHTTPClient
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler 12030 beim Abruf über TNetHTTPClient

Ein Thema von Hobbycoder · begonnen am 25. Okt 2022 · letzter Beitrag vom 26. Okt 2022
Antwort Antwort
Hobbycoder

Registriert seit: 22. Feb 2017
955 Beiträge
 
#1

Fehler 12030 beim Abruf über TNetHTTPClient

  Alt 25. Okt 2022, 18:26
Hi,
ich rufe von einer Datenquelle über http JSON-daten ab. Bei einigen kleineren Statusinformation klappt das auch soweit wie erwartet.

Jetzt will ich eine JSON-Liste abrufen, die etwas länger ist. Firefox benötigt mitunter 10 Sekunden.
Ich nutze Systen.Net.HttpClientComponent.TNetHTTPClient. Dieser bricht nach ablauf des Timeouts immer mit dem Fehler 12030. Wenn die verwendete URL aber in den Browser kopiere, dann läuft das einwandfrei.
Einer eine Idee woran das liegen könnte?

Delphi-Quellcode:
function TDeviceDataThread.RequestServices(var ResponseJSON: string): Integer;
var
  httpClient: TNetHTTPClient;
  Response: IHTTPResponse;
  SS: TStringStream;
  LogText: string;
  url: string;
begin
  httpClient:=TNetHTTPClient.Create(nil);
  SS:=TStringStream.Create;
  try
    try
      httpClient.ConnectionTimeout:=600000;
      httpClient.ResponseTimeout:=600000;
      url:='http://'+FUser+':'+FPass+'@'+FIP+':'+FPort.ToString+'/api/getallservices';
      Response:=httpClient.get(url, SS);
      SS.Position:=0;
      LogText:='JSON: '+SS.DataString;
      ResponseJSON:=SS.DataString;
      Result:=Response.StatusCode;
    except
      on E: Exception do
      begin
        LogText:='Fehler getallservices: '+E.Message+' '+LogText;
        DoLog(LogText);
        Result:=403;
      end;
    end;
  finally
    httpClient.Free;
  end;
end;
Miniaturansicht angehängter Grafiken
fehler_tnethttpclient.png  
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
itblumi

Registriert seit: 28. Mär 2009
73 Beiträge
 
Delphi XE6 Professional
 
#2

AW: Fehler 12030 beim Abruf über TNetHTTPClient

  Alt 26. Okt 2022, 12:45
Ich würde Dir empfehlen das Ganze mal mit Wireshark zu überprüfen um zu schauen wo der Fehler liegt.
So weit mir bekannt ist, trat dieser Fehler bei nicht übereinstimmenden Protokollen auf. Du könntest
die auch noch anschauen welche Protokolle dein Browser benutzt.
Jan
Ein neuer Tag bringt so einiges mit sich. Was auch immer es ist, es bleibt ein kleines Abenteuer.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Fehler 12030 beim Abruf über TNetHTTPClient

  Alt 26. Okt 2022, 21:57
Du verwendest die Basic-Authentication in der URL. Ich weiß nicht, ob der Client diese Syntax transparent unterstützt. Hast Du mal probiert, ob das Setzen von User und Passwort über den dafür vorgesehenen AuthEvent funktioniert?

RFC-3986 (AD 2005) sagt, dass die Verwendung der Syntax mit user:pass veraltet ist und falls doch unterstützt, dass übergebene Passwort ignoriert werden soll.

Edit: Wie wird der StringStream freigegeben? Zumal der Überflüssig ist, Get gibt ein IHTTPResponse zuück, welches über IURLResponse ContentAsString unterstützt.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all

Geändert von Union (26. Okt 2022 um 22:10 Uhr)
  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 18:45 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