比方说,助焊剂或Mono产生错误,并且我想在发生此错误时执行非阻塞性副作用,例如发送电子邮件。我想要实现的是这样的:
val myMono = ..
myMono.onErrorFlatMap { throwable ->
emailService.sendEmail(...).map(throwable)
}
在发送电子邮件之后,我想继续走在“错误轨道”上,即无法使用onErrorResume(..)
之类的方法恢复。我该怎么办?
答案 0 :(得分:1)
onErrorResume
仍然是首选方式:
mono.onErrorResume(e -> emailService.sendEmail(...)
.then(Mono.error(e))
);