WCF-请求通道在 1 分钟后超时,而两端的 sendTimeout=“00:25:00”

本文关键字:sendTimeout 通道 请求 分钟 超时 WCF- | 更新日期: 2023-09-27 18:37:22

我收到"请求通道在 1 分钟后超时"的错误,即使两端都发送超时="00:25:00"。如果请求的时间少于 1 分钟,则没有问题,但在 WCF 服务上处理超过 1 分钟的请求时会出现问题。

在 WCF 服务端,我的 web.config 文件中有以下绑定

<bindings>
  <basicHttpBinding>
    <binding maxReceivedMessageSize="67108864" transferMode="Streamed" closeTimeout="00:25:00" openTimeout="00:25:00" sendTimeout="00:25:00" receiveTimeout="00:25:00" >
      <security mode="None" ></security>
    </binding>
  </basicHttpBinding>  
</bindings>

在客户端,我的app.config文件中有以下绑定

<bindings>
  <basicHttpBinding>
    <binding name="streambinding" maxReceivedMessageSize="67108864" closeTimeout="00:25:00" openTimeout="00:25:00" sendTimeout="00:25:00" receiveTimeout="00:25:00" transferMode="Streamed">
      <security mode="None"></security>
    </binding>
  </basicHttpBinding>
</bindings>

WCF-请求通道在 1 分钟后超时,而两端的 sendTimeout=“00:25:00”

从服务和客户端的配置文件中 我可以辨认出来,您的服务绑定配置是默认的,我的意思是它没有给出任何名称,但客户端绑定配置有一个绑定名称。尝试在服务和客户端上保持相同,要么在服务中使用用于绑定配置的名称,要么从客户端中删除该名称。由于您正在使用不同的绑定名称进行访问,因此 WCF 无法识别确切的配置,并且可能会超时。