【发布时间】:2019-03-20 04:16:49
【问题描述】:
我试图弄清楚如何从 web 客户端记录异常,无论从被调用的 api 返回的错误状态代码如何。
我见过以下实现:
.onStatus(status -> status.value() != HttpStatus.OK.value(),
rs -> rs.bodyToMono(String.class).map(body -> new IOException(String.format(
"Response HTTP code is different from 200: %s, body: '%s'", rs.statusCode(), body))))
我见过的另一个例子是使用过滤器。我猜这个过滤器也可以用来记录错误,除了这个例子中的请求:
public MyClient(WebClient.Builder webClientBuilder) {
webClient = webClientBuilder // you can also just use WebClient.builder()
.baseUrl("https://httpbin.org")
.filter(logRequest()) // here is the magic
.build();
}
但是我们是否认真对待这件事没有专门的异常处理程序?
【问题讨论】:
标签: spring-boot spring-webflux