繁体   English   中英

我如何从HttpWebResponse获取详细信息

[英]How do i get detailed info from a HttpWebResponse

我正在发布httpwebrequst,但在HttpWebResponse中,我收到了禁止输入的错误代码403。 现在,该错误对我来说已不是很有用。

然后,我尝试了一个测试程序(我没有:()的源代码,并使用它进行了相同的帖子,它返回了禁止的代码403,但同时告诉我需要SSL。因此有可能获得SSL更多“服务器端”的细节来自失败的httpwebrequest,只是错误代码?

谢谢


只是为了清理事情。 我得到403很好,我只是想知道为什么当我在webexception中看到类似的内容时,测试程序为什么可以告诉SSL需要SSL

如果由于协议错误而引发WebException,则其Response属性将包含从Web服务器收到的实际响应。

try 
{
    // Do WebRequest
}
catch (WebException ex) 
{
    if (ex.Status == WebExceptionStatus.ProtocolError) 
    {
        HttpWebResponse response = ex.Response as HttpWebResponse;
        if (response != null)
        {
            // Process response
        }
    }
}

没有明确的方法要求更详细的信息,不,基本上,您会得到什么。

也就是说,Web服务器通常会返回文档以及有时包含有用信息的那些错误代码,就像您解释SSL证书问题的代码一样。 为了帮助您发现此类问题,请查看Fiddler ,它会向您显示有关服务器响应的所有信息。

至于您的特定错误,很难说。 403可以指示一些不同的事物。 但是,如果您返回了表明与SSL有关的响应,则可能只是在处理错误或已过期的证书( 请参阅此问题 ),或者服务器可能需要安全连接但没有安全连接。 您是否尝试过使用Web浏览器直接点击URL,只是为了查看您是否收到警告,提示是否存在证书问题或未经处理的403响应以外的其他提示?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM