我对Spring WebClient还比较陌生。请问有什么好的方法可以记录来自另一个Web服务的REST请求和响应?
我已经看到了一个关于在问题中记录请求的示例,但是我还需要记录POST调用的响应和请求。 如何记录Spring 5 WebClient调用
谢谢。
我对Spring WebClient还比较陌生。请问有什么好的方法可以记录来自另一个Web服务的REST请求和响应?
我已经看到了一个关于在问题中记录请求的示例,但是我还需要记录POST调用的响应和请求。 如何记录Spring 5 WebClient调用
谢谢。
一个选择是使用onStatus
函数。优点是您可以根据不同的状态码做出不同的反应:
.onStatus(HttpStatus::is4xxClientError, res -> {
res.toEntity(String.class).subscribe(
entity -> log.warn("Client error {}", entity)
);
return Mono.error(new HttpClientErrorException(res.statusCode()));}
)
但请注意,这种方式是异步记录日志的,这意味着它可能会在您记录其他内容之后才记录。我目前正在使用这种方式,但我知道它并不完美,所以我很乐意听到更好的建议。