提问人:Ang Alex Li 提问时间:11/16/2023 最后编辑:Ang Alex Li 更新时间:11/16/2023 访问量:30
使用 Webflux 时返回后在后台发出 http 请求?
Making http request in the background after return when using Webflux?
问:
我正在尝试处理webflux中的错误,处理包括根据上游的错误消息发送http请求以获取错误的相关信息,然后使用请求结果在db中操作。
这种错误处理需要花费大量时间,并且与我的响应无关,因此我想立即返回上游结果并在后台运行错误处理过程。
我尝试过以下代码
return MyProcess()
.doOnSuccess(response -> logSuccess())
.doOnError(e-> Mono.fromCallable(()->apnsCallback.handleIOSError(e.getMessage()))
.subscribeOn(Schedulers.boundedElastic())
.subscribe());
它立即返回结果,并在后台触发,看起来不错,但问题是只执行了我的 http 请求之前的代码。MyProcess()
handleError()
我已经阅读了这个答案并尝试了,所有代码都已执行,但我的服务在错误处理完成之前不会返回。onErrorResume
handleError()
无论如何,我都可以使用 webflux 在后台发出 http 请求吗?
答: 暂无答案
评论
subscribe
publishOn
subscribeOn
subscribe
handleIOSError
Mono
defer
fromCallable
handleError
Mono
Mono