【发布时间】:2020-03-13 17:48:27
【问题描述】:
目前我的代码如下所示:
List<Mono<ResponseEntity<String>>> response = queue.stream()
.map(req-> webClient
.post()
.bodyValue(req)
.retrieve()
.toEntity(String.class)
)
.collect(Collectors.toList());
我怎么能等待所有回复都被接受的那一刻?
如果某些请求失败,我只想重试它们。
我怎样才能实现它?
【问题讨论】:
-
我猜你想要自动重试?或者你想明确地重试它们?
-
@Haris Osmanagić 我更喜欢自动重试。 WebClient 开箱即用地支持单个请求
-
您绝对可以使用 Executor,并将您的所有请求作为任务提交。如果您可以使用 WebClient 轻松重试单个请求,那么等待所有请求完成非常容易。
标签: java spring spring-boot spring-webflux spring-webclient