SpringWebClient:当请求主体遇到错误时会发生什么
在春季,我们可以将一个SpringWebClient:当请求主体遇到错误时会发生什么,spring,spring-webflux,project-reactor,spring-webclient,Spring,Spring Webflux,Project Reactor,Spring Webclient,在春季,我们可以将一个Mono作为请求主体传递给WebClient。但是如果Mono的Mono终止时出现错误怎么办?WebClient是否会发送此请求?如果是的话,它实际上会发送什么?如果不是,HTTP连接是否会关闭(即使是持久连接) 代码示例: String responseBody = WebClient.create().post() .uri("http://localhost/example") .header("X-Header-Para
Mono
作为请求主体传递给WebClient
。但是如果Mono的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
,它将始终引发异常。出错时将发出错误信号并终止序列。所以请求不会被发送。