см. проблему с github здесь: https://github.com/spring-projects/spri ... sues/47940
и которая, кажется, исправлена этим зафиксировать: https://github.com/spring-projects/spri ... 2563e7c9b0 7c034b381297b0bf#diff-8b43c3d64899c92eceef16c0119431ad2d54515c540e2b45ae097864cf91a208 при весенней загрузке 3.5.8.
Теперь я не понимаю текущего поведения. Теперь, если я хочу настроить все типы тайм-аута для HTTP-запросов,
Я могу легко настроить тайм-аут подключения и время чтения, как показано ниже:
Код: Выделить всё
@Bean
public RestTemplate restTemplateWithTimeout() {
ClientHttpRequestFactorySettings settings = ClientHttpRequestFactorySettings.defaults()
.withConnectTimeout(Duration.ofSeconds(1))
.withReadTimeout(Duration.ofSeconds(1));
return restTemplateBuilder
.requestFactorySettings(settings)
.build();
}
Поэтому, чтобы настроить тайм-аут запроса соединения, мне все равно нужно создать HttpComponentsClientHttpRequestFactory и установить для него resttemplate с конфигурацией, как показано ниже:
Код: Выделить всё
private HttpComponentsClientHttpRequestFactory buildClientHttpRequestFactoryWithTimeout() {
HttpComponentsClientHttpRequestFactory clientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory();
clientHttpRequestFactory.setConnectionRequestTimeout(timeout);
return clientHttpRequestFactory;
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... pring-boot
Мобильная версия