有人可以帮助清除HttpWebResponse和WebException中“StatusCode”属性的用法吗?

例如,看来,如果:

a)也不异常(exception),则HttpWebResponse将具有一个StatusCode,该StatusCode可能具有一些值来指示这两个值:
-成功(例如,确定,接受等)
-失败(例如UseProxy,RequestTimeout等)

b)有一个WebExeption引发,它本身具有一个响应对象,该对象又具有一个StatusCode(我假设它基于相同的HttpStatusCode枚举。

问题1
-在什么状态代码将触发WebException方面是否存在一致性(您将在异常内获取详细信息),与之一致的是,该异常将无异常(exception)地返回,但是您会在响应的StatusCode中找到结果目的?

问题2 -更具体地说,是什么用于尝试处理httpWebRequest.GetResponse调用的pseduo代码(或C#代码本身),以便您要区分用户的响应类别:

  • 代理设置/代理问题
    =>因此可以告诉用户修复代理设置
  • 连接问题/Web服务器关闭
    =>所以用户知道这个
  • 服务器端错误(例如,服务器在那里,但处理请求时出现问题-例如,内容不存在)
    =>因此用户可以与网站管理员
  • 一起筹集资金
  • 成功案例(而且我认为这不仅仅可以)
    => na(成功的情况)

  • 谢谢

    最佳答案

    以我的经验,响应状态代码仅返回200或0。其他任何情况都是通过WebException来的,包括407或417之类的代理错误。

    关于C#HttpWebRequest.GetResponse-如何处理非异常vs WebException响应的StatusCode使用情况?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2182544/

    10-15 05:55