【发布时间】:2012-03-23 00:06:43
【问题描述】:
有没有办法在服务端设置一个 tiemout 以便请求在超过超时时停止处理?我知道我可以在客户端将请求超时,但这不会停止服务器上对请求的处理。
我已尝试添加以下绑定:
<basicHttpBinding>
<binding name="timeout" receiveTimeout="00:01:00" closeTimeout="00:01:00" openTimeout="00:01:00" sendTimeout="00:01:00" />
</basicHttpBinding>
我还尝试在 system.web 节点中添加以下内容(单独和与上述内容一起):
<httpRuntime executionTimeout="60" /> <!-- timeout after 60 seconds -->
【问题讨论】:
-
您可以在 Endpoint 的绑定配置上配置的超时主要与传输/通道超时有关,您所要求的是一种方法来限制您的服务处理代码的时间,而不管有多少通信时间是必要的吧?例如,您想设置您的 WCF 服务将在处理操作超过 2 分钟时中止...这是您要问的吗?
-
@Cshapenter - 这基本上是正确的。