我正在尝试从小型嵌入式中文设备接收 HTTP 内容。设备的内置 Web 服务器接受标头,但不会在响应中返回任何标头。
IE
原始响应:(2 行,1 是 XML,第二是空白 \n)
<?xml version="1.0" encoding="utf-8"?><document><userkey>key</userkey> <machinemode>1</machinemode><serial>0000</serial><unitname>Device</unitname><version>1</version></document>\n
Fiddler 根本不会显示响应。使用HttpWebRequest
andWebClient
不会产生任何结果,因为响应中没有标头,这会导致异常。我所做的一些研究指向将其添加useUnsafeHeaderParsing
到应用程序配置中(和/或以编程方式设置它)。这根本不起作用。我仍然收到
System.Net.WebException was unhandled
Message=The server committed a protocol violation. Section=ResponseStatusLine
Source=System
StackTrace:
at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
有解决办法吗?在不使用 Sockets/TCPClient 的情况下,是否有另一种从不提供标头的服务器接收数据的方法?