Я знаю о Spring 5 webflux, как установить время ожидания для Webclient , но это настраивает время ожидания глобально для всех запросов.Я ищу способ настроить время ожидания для каждого запроса.Т.е. что-то вроде этого (псевдокод не работает):
WebClient client = ...
// Call 1
client.timeout(5, TimeUnit.SECONDS).contentType(APPLICATION_JSON).syncBody(..).exchange(). ..
// Call 2
client.timeout(4, TimeUnit.SECONDS).contentType(APPLICATION_JSON).syncBody(..).exchange().
Функция timeout
предназначена для демонстрации того, что я ищу.Как мне этого добиться?Также важно, чтобы ресурсы очищались должным образом по таймауту.
Если есть какая-то разница, я использую Netty (reactor-netty
0.8.4.RELEASE):
HttpClient httpClient = HttpClient.create(). ...;
WebClient webClient = WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(httpClient))
.build();