1
当访问无服务器运行的无效IP地址时,Microsoft System.Net.Browser.ClientHttpWebRequest似乎会抛出一个状态码为NotFound的WebException,它对应于服务器的404响应。正确的响应不是HTTP状态码,绝对不在400范围内,因为客户端库从来没有机会与有效的HTTP服务器通话。这对我的代码来说是有问题的,因为404在我的服务器端点返回时有特殊含义。为什么System.Net.Browser.ClientHttpWebRequest在访问无效的服务器地址时返回404?
有什么方法可以确定404(NotFound)响应实际上是由服务器返回还是被错误地用于描述System.Net.Browser.ClientHttpWebRequest类的一般连接失败?
请注意,这种行为发生在WP8上。
我一直能够在我的一个应用程序中用'HttpClient'处理这个特定情况,通过检查伴随错误发生的原因词组(如果它是空的,那么它可能是一个连接问题)。我不知道是否可以用'HttpWebRequest'做同样的事情。 –
您的互联网服务提供商会这样做。其DNS服务器将您重定向到他们自己的垃圾页面。在你的网络浏览器中试试'http:// 1.1.1.1'来查看相同的页面。找一个更好的ISP或将DNS地址改为8.8.8.8 –