3 Stimmen

In der Antwort auf eine REST-Anfrage kann kein aktueller Fehler angezeigt werden. Fiddler zeigt mir mehr Fehlerdetails. In .NET bekomme ich nur 500 - Internal Server Error

In .NET rufe ich einen Restdienst auf und erhalte eine Ausnahme - 500 Internal Server Error .

HttpWebResponse response = request.GetResponse() as HttpWebResponse

Wenn ich dies in Fiddler (in TextView) analysiere, erhalte ich viele Details über die richtige Ausnahme, die den Fehler verursacht hat.

In meinem Ausnahmeobjekt kann ich diese Informationen nicht in der InnerException (sie ist null) noch in der Response Objekt selbst.

Irgendwelche Ideen?

0 Stimmen

Können Sie die Ergebnisse des Fiddlers veröffentlichen? Haben Sie überhaupt Zugriff auf den REST-Server?

0 Stimmen

Arbeiten Sie an Ihren Antworten :) Bitte stellen Sie keine Vermutungen an, ich akzeptiere Antworten, die korrekt sind. Die meisten meiner Fragen bleiben unbeantwortet oder werden nicht richtig beantwortet.

8voto

JamieSee Punkte 12176

Versuchen Sie es mit einem Blick auf die WebException.Response-Eigenschaft :

catch(WebException ex)
{
    Console.WriteLine(ex.Message);

    if (ex.Status == WebExceptionStatus.ProtocolError)
    {
        Console.WriteLine("Status Code : {0}", ((HttpWebResponse)ex.Response).StatusCode);
        Console.WriteLine("Status Description : {0}", ((HttpWebResponse)ex.Response).StatusDescription);

        using (Stream responseStream = ex.Response.GetResponseStream())
        {
            if (responseStream != null)
            {
                using (StreamReader responseReader = new StreamReader(responseStream))
                {
                    Console.WriteLine(responseReader.ReadToEnd());
                }
            }
        }
    }
}

5voto

drch Punkte 2990

Die "innere" Ausnahme findet auf dem entfernten Host statt. Die WebException hat eine Response-Eigenschaft, die Sie lesen können, um die Details zu erfahren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X