加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Spring rest模板readTimeOut

发布时间:2020-12-15 01:25:46 所属栏目:大数据 来源:网络整理
导读:我正在尝试理解restTemplate上可用的readTimeout,它究竟是什么? 它是在我们获得超时异常之前请求可以花费的总时间吗? 最佳答案 您可以在RestTemplate上定义读取超时,如下所示: HttpComponentsClientHttpRequestFactory clientRequestFactory = new HttpCo

我正在尝试理解restTemplate上可用的readTimeout,它究竟是什么?

它是在我们获得超时异常之前请求可以花费的总时间吗?

最佳答案
您可以在RestTemplate上定义读取超时,如下所示:

HttpComponentsClientHttpRequestFactory clientRequestFactory = new HttpComponentsClientHttpRequestFactory();
// set the read timeot,this value is in miliseconds
clientRequestFactory.setReadTimeout(500);

RestTemplate restTemplate = new RestTemplate(clientRequestFactory);

给定一个X millis的readTimeout,通过RestTemplate实例发出的任何超过X millis的请求将导致一个ResourceAccessException,包含一个java.net.SocketTimeoutException,并带有异常消息:“Read timed out”.

超时实际上是由HttpClient实例中的套接字连接器实现的,该实例由RestTemplate包装,因此当请求首次命中该套接字时,时钟开始,当这些请求首先出现时停止:请求完成或达到readTimeout.

实际上,这意味着任何花费超过配置的readTmeout的请求都将因超时异常而失败.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读