SpringReact堆-下一步,它被执行了吗?

tpgth1q7  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(453)

我在玩React堆

public @NotNull Mono<ServerResponse> findXXXXSse(final ServerRequest request) {
    return request.bodyToMono(XXXXSearch.class)
            .doOnNext(this::validate)
            .flatMap(this::findXXXXSse)
            .switchIfEmpty(this.emptyBodyException());
}

我想知道“.doonnext(this::validate)”的用法是否正确。在我看来,我不确定在findse之前是否调用了validate?
我错了吗?

iibxawm4

iibxawm41#

Flux.doOnNext 方法应始终作为副作用使用。
文档中说“添加通量发射项目时触发的行为(副作用)”。请参阅:https://projectreactor.io/docs/core/release/api/reactor/core/publisher/flux.html#doonnext-java.util.function.consumer用户-
我假设您只想在验证成功时恢复您的链,即。, .flatMap(this::findXXXXSse) 仅当验证成功时才应调用。
你可以用 filter(this::validate) 并添加一个 validate(XXXXSearch.class) 方法返回true/false。

相关问题