Spring WebClient:当请求正文Mono遇到错误时会发生什么

问题描述

在Spring中,我们可以将Mono作为请求正文传递给WebClient。但是,如果该Mono因错误而终止怎么办? WebClient会发送此请求吗?如果是这样,它将实际发送什么?如果没有,HTTP连接是否会关闭(即使它是持久连接)?

代码示例:

String responseBody = WebClient.create().post()
    .uri("http://localhost/example")
    .header("X-Header-Param","header value")
    .body(Mono.defer(() -> Mono.error(new Exception("boom"))),String.class)
    .retrieve()
    .bodyToMono(String.class)
    .block();

请注意,body方法的第一个参数是延迟的Mono,它将始终引发异常。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)