2008-09-24 7 views
5

. NET-Implementierung von HTTP ist ... problematisch. Abgesehen von einigen Problemen in Übereinstimmung mit HTTP/1.0, stört mich jetzt, dass HttpWebResponse.GetResponse() mit ReadTimeout und Timeout auf 5000 Blöcke für etwa 20 Sekunden vor dem Scheitern gesetzt (das Problem ist, sollte es nach 5 Sekunden scheitern, aber es dauert tatsächlich 20 Sekunden).Eine zuverlässige HTTP-Bibliothek für .Net 2.0

Ich brauche eine Bibliothek mit besserer Protokollkonformität und Timeout-Kontrolle. Irgendwelche wissen?

+0

+1 Ich bin auch interessiert. In welcher Version von .NET befinden Sie sich? mit diesem ReadTimeout-Problem? – chakrit

+0

2.0. Was ist Ihre zweite Frage? – ripper234

Antwort

2

Nach Microsoft, was könnte hängen ist möglicherweise die DNS-Auflösung, die bis zu 15 Sekunden dauern kann.

Lösung - tun Sie die DNS-Auflösung auf eigene Faust (Dns.BeginGetHostByName).

0

Chilkat hat eine HTTP-Komponente. Ich habe es nie benutzt, aber ich war beeindruckt von einigen ihrer anderen Komponenten.

0

Siehe die HttpWebRequest.BeginGetResponse() -Methode. Nicht genau das, wonach du gefragt hast, es sind ein paar Tage vergangen, seit du irgendwelche anderen Antworten erhalten hast, und es verdient eine Erwähnung.