我想合并两个响应并返回一个通量。
private Flux<Response<List<Company>, Error>> loopGet(List<Entity> registries, Boolean status) {
return Flux.fromIterable(registries)
.flatMap(this::sendGetRequest)
.mergeWith(Mono.just(fetch(status)));
}
这就是我正在做的,正在工作,但是我希望合并在调用mono.just(fetch(status))之前等待。我来解释一下,sendgetrequest返回一个mono,它进行一个api调用,并从结果中将内容保存到db。随后,merge使用fetch方法调用db,但该数据尚未更新。如果我再打电话,我会得到更新的数据。
1条答案
按热度按时间6rvt4ljy1#
你需要
concatWith
以及fromCallable
以确保在get请求完成后延迟调用fetch。