Web Services 使用WCF Web服务时获取系统.服务模型.协议异常

vfhzx4xs  于 2022-11-15  发布在  其他
关注(0)|答案(1)|浏览(151)

我正在使用一个WCF Web服务,我在Web服务端没有控制权。
我已经给出了一个自动生成的svc.cs代理文件,我正在使用它。
实际上,我请求Web服务从客户端下载一些大数据。
有时候我会变得
System.ServiceModel.ProtocolException
在我的客户端。
例外情况如下:

系统.服务模型.协议异常:可用的字节数与HTTP Content-Length标头不一致。可能出现了网络错误或客户端发送的请求无效。

服务器堆栈跟踪:在系统.服务模型.通道.HttpInput.读取缓冲消息(数据流输入数据流)位于系统.服务模型.通道.HttpInput.剖析传入消息在系统.服务模型.通道.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.等待回复时出现异常错误(时间跨度超时)在系统.服务模型.通道.请求通道.请求(消息消息,时间跨度超时)在系统.服务模型.调度程序.请求通道绑定器.请求(消息消息,时间跨度超时)(字符串操作、布尔单向、ProxyOperationRuntime操作、对象[]输入、对象[]输出、TimeSpan超时)(字符串操作,布尔单向,代理操作运行时操作,对象[]输入,对象[]输出)在系统.服务模型.通道.服务通道代理.调用服务(IMethodCallMessage方法调用,代理操作运行时操作)在系统.服务模型.通道.服务通道代理.调用(IMessage消息)
在[0]处再次引发异常:在IBulkDataSvc.获取在Empower.ServiceRequest.EmployeeDataXML(日期时间,字符串终端)在Empower.DownloadEmployeeList(字符串终端)的雇员数据(字符串业务路径,日期时间,有效日期,字符串终端)
我在客户端的Web服务绑定配置如下(仅显示绑定),

<bindings>
      <basicHttpBinding>
        <binding name="BulkDataSvcSoap">
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Basic" />
          </security>
        </binding>
        <binding name="BulkDataSvcHttpsSoap">
          <security mode="Transport">
            <transport clientCredentialType="Basic" />
          </security>
        </binding>
      </basicHttpBinding>
      <netTcpBinding>
        <binding name="BulkDataSvcTcp">
          <security mode="None" />
        </binding>
      </netTcpBinding>
    </bindings>

我有点困惑,它到底是从哪一端产生的,为什么会产生?

我已经在谷歌上搜索过了,没有发现任何有帮助的东西,所以能有人帮我解决这个难题吗?

hrirmatl

hrirmatl1#

你有机会读这篇文章吗
此外,在某些情况下,如果您的请求带来的数据大于在Web服务端指定的数据,则您一定会得到此结果。

相关问题