zoukankan      html  css  js  c++  java
  • VS引用Java WebService的時候,遇到了“伺服器認可通訊協定違規”错误

    公司需要整合各系统数据,需要通过Informix的Java WebService进行数据交换,结果在添加Web引用的时候出现“伺服器认可通讯协定违规”;

    几经辗转,解决方案如下:

    在.Net2.0的machine.config中的</configuration>之前添加以下代码,注意:Web引用的层级并不是专案的Config控制的,所以必须在machine.config添加;

    1 <system.net> 
    2 <settings> 
    3 <httpWebRequest useUnsafeHeaderParsing="true"/> 
    4 </settings> 
    5 </system.net> 

    另外有的朋友在使用WebRequest的时候也遇到这种情况,有的网站用HttpWebrequest抓取网页的时候会报错,捕获异常提示:"服务器提交了协议冲突 Section=ResponseStatusLine ”,改用WebClient也是同样问题,后来知道,WebClient是对HttpWebrequest进一步进行了封装。
    最后终于找到问题根源:The  server  committed  a  protocol  violation.  Section=ResponseHeader  Detail=CR  must  be  followed  by  LF 微软没有容忍不符合RFC  822中的httpHeader必须以CRLF结束的规定的服务器响应。
    通过修改配置文件解决:在app.config(WinForm)或web.config(Web)文件里修改。

    WinForm下的app.config默认不存在,手动在Debug文件夹所在的同级目录下新建一个XML配置文件,内容为:
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <system.net>
            <settings>
                <httpWebRequest  useUnsafeHeaderParsing= "true "  />
            </settings>
        </system.net>
    </configuration>
    编译以后会在Debug下面自动创建一个 程序名.exe.config 的配置文件 

  • 相关阅读:
    valgrind检查:Conditional jump or move depends on uninitialised value(s)
    信号 SIGPIPE
    Snapdragon——1.定位游戏瓶颈
    unity修改所选路径下的,对象的importer属性
    git命令行
    ue4 lightmass研究
    leecode保存 简单题到ZY转换
    ue4 skybox
    ue4导入staticMesh
    uml类图的几种关系
  • 原文地址:https://www.cnblogs.com/godwar/p/1772259.html
Copyright © 2011-2022 走看看