2016-09-15 2 views
1

Ich erhalte eine ERR_CONNECTION_RESET in Chrome, wenn mein ASP.NET-Server versucht, mit einem Fehler zu antworten.Ermitteln von ERR_CONNECTION_RESET von IIS ohne Informationen in Protokollen

Normalerweise kann ich Informationen über Serverfehler finden, indem ich in den Protokolldateien nachschaue, aber da ist nichts.

Das Ausführen eines Debuggers über die Antwort scheint zu zeigen, dass alles in Ordnung ist, außer am Ende, Chrome sagt mir, dass die Verbindung zurückgesetzt wurde. Hier

ist der Code, der die Ausnahmebehandlung ist der Umgang:

try 
    { 
     ... 
    } 
    catch (ArgumentException e) 
    { 
     Response.StatusCode = 400; 
     Response.StatusDescription = e.Message; 
     return new ContentResult {Content = "" }; 
    } 

Chrome zeigt mir net::ERR_CONNECTION_RESET in der Konsole.

Fiddler verwenden, erhalte ich die Fehlermeldung [Fiddler] ReadResponse() failed: The server did not return a complete response for this request. Server returned 0 bytes.

Wenn ich Enable Failed Request Tracing in IIS, und öffnen Sie die generierte XML-Datei

GENERAL_FLUSH_RESPONSE_END 


    BytesSent 
    0 

    ErrorCode 
    The parameter is incorrect. 
    (0x80070057) 

Ich habe Stunden damit verbracht, das ohne viel Glück zu debuggen.

Antwort

1

Es stellt sich heraus, das durch diese Linie verursacht wurde:

Response.StatusDescription = e.Message; 

Wenn e.Message eine neue Zeile (\r\n) Sequenz nach innen hat.

Die beiden Optionen, die ich zur Verfügung hatte diesen Fehler zu beheben waren:

1. die Zeile Ersetzen durch:

Response.StatusDescription = e.Message.Replace("\r\n"," "); 

2. den catch-Block ersetzen mit

catch (ArgumentException e) 
    { 
     Response.StatusCode = 400; 
     return new ContentResult {Content = e.Message }; 
    } 
+1

Ran in das gleiche Problem. Ich danke dir sehr. Ich schlug in dieser Ausgabe für 2 Tage meinen Kopf gegen die Wand. –

1

Ich hatte dieses Problem nach dem Spielen mit einigen virtuellen Domains auf dem localhost und assignin g SSL-Zertifikate. Bei Auswahl des IIS-Entwicklungszertifikats für die aktuelle Domäne ist der Fehler verschwunden.

+0

Aus irgendeinem Grund bekam ich auch diesen Fehler und konnte nicht herausfinden, was das Problem war. Nachdem die HTTPS-Bindung manuell gelöscht und neu erstellt wurde, hat alles wieder funktioniert ... –

Verwandte Themen