HTTP 协议问题
一 在请求Http服务器, 步骤request.GetResponse() as HttpWebResponse的时候报错
System.Net.WebException:“服务器提交了协议冲突. Section=ResponseStatusLine”
解决方法:
在App.config文件中添加:
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing = "true"/>
</settings>
</system.net>
二 Http请求Linux服务器, 返回的内容乱码
答: 是因为返回的内容做了压缩导致的, 可以用postman请求服务器, 观察返回的信息中的Headers-Content-Encoding
如果是gzip压缩, 解决方法:
Stream stm = new System.IO.Compression.GZipStream(webresponse.GetResponseStream(), System.IO.Compression.CompressionMode.Decompress);
StreamReader reader = new StreamReader(stm, Encoding.UTF8);
return reader.ReadToEnd();