我需要能够将 http 302 重定向与使用 .net 远程处理的代码区分开来。
为了连接到适当的 url,我们按顺序尝试它们,直到一个有效。在大多数环境中,第一个 url 正确失败并出现 System.Net.WebException,状态为 WebExceptionStatus.NameResolutionFailure。但是,对于使用 OpenDNS 的客户,这会以 HTTP 302 响应的形式返回,重定向到他们的指南页面。因为我正在使用 .net Remoting,重定向被忽略,并且我收到的错误是 System.Runtime.Serialization.SerializationException,只能通过其消息“解析完成之前遇到流结束”来区分。
这是 opendns http 响应:HTTP/1.0 302 找到位置:http://guide.opendns.com/?url=demonstration.totallyinvalidexceptonmynetwork.com%2Fi%2Fdo%2Fnot%2Fexist.html内容 类型:文本/html 内容-长度:0 连接:关闭日期:2009 年 5 月 28 日星期四 20:46:26 GMT 服务器:OpenDNS 指南