我有一个 WebClient
利用重试:
webClient.retryWhen(
Retry.backoff(3, Duration.ofSeconds(3)).filter(this::isRetryable)
)
private boolean isRetryable(Throwable throwable) {
//TODO how access the json body?
}
问题:在重试期间如何评估json响应主体?因为我不仅要基于状态代码,还要基于返回的错误内容来做出决定。
1条答案
按热度按时间uujelgoq1#
我猜你用的是
retrieve()
方法,如果状态代码发出错误信号,它将始终引发异常。你可能想用exchangeToMono()
相反,它不会在非2xx状态代码上引发异常,而是为您提供响应以执行您所希望的操作: