我在WebHarvest配置文件中使用以下代码来定义WebHarvest中的http元素的超时(Webharvest使用Jakarta HttpClient)。
但是当我将其设置为20000时,需要大约40-50秒才能达到超时!
当我将它设置为30000超时永远不会达到(至少在2分钟内我等待)!!
我只需要限制响应等待时间。
<var-def name="WTimeOut">20000</var-def>
<script language="javascript">
var tmot=WTimeOut.toString();
http.client.params.soTimeout = tmot;
http.client.params.connectionManagerTimeout = tmot;
http.client.httpConnectionManager.params.connectionTimeout = tmot;
</script>
我还尝试通过此代码通过Java代码本身o HttpClient来实现:
HttpClient whClient = scraper.getHttpClientManager().getHttpClient();
whClient.getParams().setParameter("http.connection-manager.timeout", (long)20000);
whClient.getParams().setParameter("http.socket.timeout",(int)20000);
但我得到了同样的结果!
正如this:
只有当HTTP处于非活动状态时,SO_TIMEOUT才会启动 连接
那么我该如何设置等待响应的时间限制?
由于