无法获得REST请求响应的实际错误.Fiddler向我展示了更多错误细节.在.NET中,我得到的是500 - 内部服务器错误

use*_*500 3 c# rest fiddler

在.NET中,我正在调用一个休息服务并获得异常 - 500 Internal Server Error.

HttpWebResponse response = request.GetResponse() as HttpWebResponse
Run Code Online (Sandbox Code Playgroud)

当我在Fiddler中分析它时(在TextView中),我得到了很多关于导致错误的正确异常的细节.

在我的异常对象中,我无法在InnerException(它为null)或Response对象本身中获取此信息.

有任何想法吗?

Jam*_*See 8

尝试查看WebException.Response属性:

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());
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)


drc*_*rch 5

"内部"异常发生在远程主机上.该引发WebException有,你可以阅读,以获得细节的响应性能.