![]() |
IdHTTP.Head hängt Programm auf
Hi,
wenn ich IdHTTP.Head benutze hängt sich mein Programm auf, ohne eine Fehlermeldung zu spucken. Allerdings nur bei einer Homepage. IdHTTP.Head('http://www.stickerei-suekuen.com/'); Weiß jemand Rat? Edit: nach geschätzen 2 Minuten erhalte ich die Fehlermeldung "Connection closed gracefully" |
AW: IdHTTP.Head hängt Programm auf
Guten Morgen,
wie hast Du denn idhttp.HandleRedirects gesetzt? Versuche es mal mit true. Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Es ist True;
Delphi-Quellcode:
Idhttp.HandleRedirects := true;
|
AW: IdHTTP.Head hängt Programm auf
Prüfe mal mit nslookup, ob Du den Namen auflösen kannst.
Zitat:
Kaum läßt man das / hinten weg funktioniert die Namensauflösung: Zitat:
Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Delphi-Quellcode:
funktioniert, woran kann das liegen
Idhttp.Get
|
AW: IdHTTP.Head hängt Programm auf
Ich hab
Delphi-Quellcode:
mal gesetzt, aber Problem besteht weiterhin
Idhttp.RedirectMaximum := 100;
|
AW: IdHTTP.Head hängt Programm auf
Vielleicht kann der NGinx Server das nicht (was ungewöhnlich wäre).
Firewall/Proxy dazwischen, welche die Anfrage schluckt? Zeichne mal den Netzwerkverkehr auf. |
AW: IdHTTP.Head hängt Programm auf
Zitat:
Wie genau kann ich den Netzwerkverkehr aufzeichnen? |
AW: IdHTTP.Head hängt Programm auf
Liste der Anhänge anzeigen (Anzahl: 2)
Du könntest das mal mit dem Programm "HTTPDownloader" im Anhang testen.
Das Programm verwendet nicht Indy sondern MSXML2. Wenn die gleichen Probleme auftreten, dann liegt der Fehler beim Webserver. |
AW: IdHTTP.Head hängt Programm auf
Das Programm liefert ein ordentliches Result.
Leider löst das nicht mein Problem :( |
AW: IdHTTP.Head hängt Programm auf
Keiner weiter eine Idee oder wie man die Headerinformationen über MSXML2 heraus bekommt?
|
AW: IdHTTP.Head hängt Programm auf
Erst einmal ließ mal das hier bitte:
![]() Hast du den Netzwerkverkehr jetzt mal inzwischen aufgezeichnet und geprüft was passiert? Zitat:
![]() ![]() ![]() |
AW: IdHTTP.Head hängt Programm auf
Zitat:
|
AW: IdHTTP.Head hängt Programm auf
Zitat:
|
AW: IdHTTP.Head hängt Programm auf
Liste der Anhänge anzeigen (Anzahl: 1)
Guten Abend,
dieser Code:
Delphi-Quellcode:
schreibt dieses in das Memo:
procedure TForm1.Button1Click(Sender: TObject);
var httpClient : Tidhttp; begin httpClient := TIdHttp.Create(nil); try httpClient.HandleRedirects := true; httpClient.Head(edit1.text); memo1.Text:=httpClient.Response.ResponseText; memo1.Lines.add('ResponseCode: '+IntToStr(httpClient.Response.ResponseCode)); finally httpClient.free; end; end; Zitat:
Edit: Zum Tracen kannst Du Wireshark verwenden. Ich haben mal den Trace zum erfolgreichen Versuch angehängt. Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Hi Klaus,
das weiß ich, leider habe ich ja genau da mein Problem mit Indy und dieser einen Webeite.
Delphi-Quellcode:
Das sich dort mein Programm für 2 Minuten aufhängt und dann auf einmal "connection closed gracefully" ausspuckt.
httpClient.Head(edit1.text);
Der Coe funktioniert wunderbar bei allen Webeiten bei mir, nur leider nicht bei dieser einen. Daher wollte ich es in MSXML2 realisieren, nur wie das funktioniert weiß ich leider nicht. |
AW: IdHTTP.Head hängt Programm auf
Guten Morgen,
deswegen wurdest Du ja schon mehrmals aufgefordert einen Trace zu ziehen wenn Du es mit der besagten URL versuchst. Übrigens habe ich mit Deiner Problem URL getestet. Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Liste der Anhänge anzeigen (Anzahl: 1)
Im Anhang ist der Netzwerkverkehr für die Domain zu sehen.
|
AW: IdHTTP.Head hängt Programm auf
Danke,
allerdings wäre die pcap Datei hilfreicher. Was man auf dem Screenshot sieht, ist das der angefragte Webserver antwortet. Also dürfte Deine (Head) Anfrage eigentlich nicht im Timeout enden. Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Ich habe jetzt mal ein nues Projekt geöffnet und deinen Code probiert Klaus, aber mit dem gleichen Ergebnis wie bei meinem.
Wie hast du die Url angegeben? Edit: Ich habe es jetzt an 3 verschiedenen Rechnern aus probiert mit jeweils 3 verschiedenen Internetverbindungen, immer das gleiche Ergebnis, es kann also nicht an meiner Verbindung liegen. 1. Verbindung --> T-online DSL 16k 2. Verbindung --> Kabel 32K 3. Vebindung 1&1 Server Berlin |
AW: IdHTTP.Head hängt Programm auf
ich habe die URL aus Beitrag #1 kopiert
und einmal mit slash am Ende der URL und einmal ohne. Provider: M-Net Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Hm ich versteh es nicht.
Bei mir mag eseinfach nicht klappen. habe alle variationen der Url aus probiert. Dann bleibt mir nur die Möglichkeit über MSXML2. Wenn jemand weiß wie das funktioniert, wäre ich froh wenn er sich meldet, per PN oder hier im Thread |
AW: IdHTTP.Head hängt Programm auf
Zitat:
Was passiert zwischen Paket 44 und 560? Das sind die 2 Minuten wo er sich aufhängt. Zumindest antwortet dann dein Server nicht. Gibt jetzt zwei Möglichkeiten: 1) dein Request ist defekt und der Server verwirft diesen 2) der Server hat ein Fehler und stürzt bei deinen Request ab (oder Endlosschleife). |
AW: IdHTTP.Head hängt Programm auf
Ich hab alle Anfragen und sende Versuche zu der besagten Domain gefiltert, diese sieht man in dem Bild, mehr wurden nicht aufgezeichnet.
Edit: Ja ich setze vorher ein Get das ist richtig, dieser funktioniert auch einwandfrei, daher bin ich so verwundert. Edit2: wie kann mein Request falsch sein, wenn er doch von Indy verschickt wird und nicht von mir selbst erstellt wurde? Edit3: habe in diesem Artikel eiin Beispiel für MSXML2 gefunden: ![]() Aber dort tritt das Problem aus das "Undeklarierter Bezeichner: 'CoXMLHTTP'" |
AW: IdHTTP.Head hängt Programm auf
Push
|
AW: IdHTTP.Head hängt Programm auf
Liste der Anhänge anzeigen (Anzahl: 1)
Im Anhang der Sourcecode für die Verwendung von MSXML2.
Kurzanleitung zum Import der MSXML2 Typbibliothek ist in der Hauptunit. |
AW: IdHTTP.Head hängt Programm auf
Kann es sein, dass du die Verbindung zum Server beim GET nicht wieder schließt?
Vielleicht ist noch ein KeepAlive an oder ähnliches. Es könnte daher sein, dass der Server keine weitere Verbindung von dir an nimmt. Prüfe mal bitte wie viele gleichzeitige Verbindungen zum Server offen sind. |
AW: IdHTTP.Head hängt Programm auf
Zitat:
|
AW: IdHTTP.Head hängt Programm auf
Danke shmia, dein Code hat endlich meine Nerven beruhigt :)
|
AW: IdHTTP.Head hängt Programm auf
Ich hab das Thema noch mal ausgegraben, da ich einen ähnlichen Fehler auch bei MSXML2 erhalte bei dieser Homepage.
![]() Nach sehr langem Timeout erhalte ich dann die Meldung das der Download des Headers nicht funktionierte. Kennt jemand den grund dafür? |
AW: IdHTTP.Head hängt Programm auf
ich habe das selbe problem
Ich möchte wissen welchen Code die webseite zurückliefert unf frage per HEAD ab. Doch bei "http://www.google.de" versagt idHTTP total egal ob MIT oder OHNE / am ende Gibt es eine Lösung? |
AW: IdHTTP.Head hängt Programm auf
.. versagt total ist eine nicht sehr präziese Fehlermeldung.
Hast Du handleRedirects eingeschaltet? Etwaige Proxies in Verwendung? Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
ja na klar ist das aktiviert und die Anzahl steht schon auf 1000 :)
es ist ja so derzeit nur Google.de was nicht geht.. test.de geht oder delphipraxis.net |
AW: IdHTTP.Head hängt Programm auf
Guten Abend Doreen,
jetzt kommt das, was Du wahrscheinlich nicht lesen willst.
Delphi-Quellcode:
tut es.
procedure TForm1.Button1Click(Sender: TObject);
var httpClient : TIdHttp; begin httpClient := TidHttp.Create(nil); httpClient.HandleRedirects := true; httpClient.Head('http://www.google.de'); memo1.Text := httpClient.ResponseText; httpClient.free; end; Response ist: "HTTP/1.1 200 OK " Nachtrag: Indy Version: 10.1.5 Grüße Klaus |
AW: IdHTTP.Head hängt Programm auf
Ich habe gerade von Indy 9 auf 10 ein update gemacht nun geht es auch bei mir :(
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz