最近在做软件登陆校内网的软件,今天突然不好用了,可能校内改版了,让我的软件出现了错误:
服务器提交了协议冲突.Section=ResponseHeader Detail=CR 后面必须是LF
这个错误貌似是微软没有容忍不符合RFC 822中的httpHeader必须以CRLF结束的规定的服务器响应所导致的,以至于无法使用软件登陆校内,让我很郁闷,后来尝试了各种方法,2种有效
方法一:
采用WEB编ASP.NET的话可用:
web.config文件里加入
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
允许系统容忍(tolerant)只以CR或LF结尾的hearder信息
方法二:
用于winform中,在Debug文件夹里新建一个文件名为:APPNAME.exe.config 的文件,APPNAME为应用程序的名字,然后用记事本打开,添加以下内容即可:
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
但是虽然解决了这个问题,貌似也不好使,应为还是登陆不上。。。也许错误该发生的还是让它发生的好,容忍了也没用...