gpt4 book ai didi

spring - onErrorResume 和 doOnError 的区别

转载 作者:行者123 更新时间:2023-12-02 06:58:15 25 4
gpt4 key购买 nike

在spring项目reactor中,onErrorResumedoOnError有什么区别?我什么时候应该分别使用它们?

最佳答案

onErrorResume:当上游发生异常时提供回退流。

doOnError:副作用运算符。假设您想记录上游发生的错误。

示例:

Mono.just(request)
.flatMap(this::makeHTTPGet)
.doOnError(err -> {
log.error("Some error occurred while making the POST call",err)
})
.onErrorResume(err -> Mono.just(getFallbackResponse()));

你看,doOnError是一个副作用运算符。这就像将温度计插入水管并读取温度一样。它对管道有影响吗?没有。

假设现在管道破裂了 - 城市仍然需要供水,对吗?因此,我们有一个可以在这种情况下激活的后备管道。 onErrorResume 正是这样做的。

注意:您还可以登录onErrorResume。没有什么可以阻止你这样做。

关于spring - onErrorResume 和 doOnError 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58167842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com