设置RestTemplate的读超时时间



我使用Spring RestTemplate从我的应用程序向不同的REST端点发出简单的POST请求。目前,我在Spring配置文件中设置了readtimeout,如下所示:

<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
    <constructor-arg>
        <bean class="org.springframework.http.client.HttpComponentsClientHttpRequestFactory">
            <property name="readTimeout" value="10000" />
            <property name="connectTimeout" value="10000"/>
        </bean>
    </constructor-arg>
</bean>

最近我的任务是根据每个请求动态设置readtimeout

我想我必须注入一个新的RequestFactory到restTemplate与新的超时值,每次我做一个POST请求,但这是一个可接受的方式来完成这一点?有没有更好的办法?

每次我发现我可以在HttpComponentsClientHttpRequestFactory对象上显式地设置读取超时,而不是向restTemplate注入新的RequestFactory。

((HttpComponentsClientHttpRequestFactory)restTemplate.getRequestFactory()).setReadTimeout(timeout)

相关内容

  • 没有找到相关文章

最新更新