return
next
.exchange(request)
- .doOnError(e -> LOG.debug("ERROR: {}", e))
.flatMap(response ->
{
return
HttpStatus.Series.CLIENT_ERROR.equals(response.statusCode().series())
- ? Mono.error(GraphApiException.create(response).block())
+ ? response
+ .bodyToMono(String.class)
+ .flatMap(errorBody -> Mono.error(GraphApiException.create(
+ response.statusCode(),
+ response.headers().asHttpHeaders(),
+ errorBody.getBytes())))
: Mono.just(response);
});
}