以下功能:
public ScoringResponse search(SearchRequest searchRequest) {
return webClient.post()
.bodyValue(searchRequest)
.retrieve()
.onStatus(HttpStatusCode::isError, ERROR_HANDLER::handleError)
.bodyToMono(ScoringResponse.class)
.timeout(Duration.ofMillis(5_000))
.subscribeOn(Schedulers.boundedElastic())
.block();
}
它返回此错误:
java.lang.IllegalStateException: block()/blockFirst()/blockLast() are
blocking, which is not supported in thread reactor-http-epoll-2
试试这个,
public Mono<ScoringResponse> search(SearchRequest searchRequest) {
return webClient.post()
.bodyValue(searchRequest)
.retrieve()
.onStatus(HttpStatus::isError, ERROR_HANDLER::handleError)
.bodyToMono(ScoringResponse.class)
.timeout(Duration.ofMillis(5_000))
.subscribeOn(Schedulers.boundedElastic());
}