Я пытаюсь реализовать интерфейс BodyExtractor, получить тело из Mono как объект вместо него в Mono.
Я не смог найти ни одного примера реализации BodyExtractor.Мне интересно, это хорошая идея для реализации или есть какой-то другой способ получить тело как объект.
Ниже приведена строка кода, которая у меня в данный момент есть
public Mono<ResponseEntity<Mono<JsonNode>>> processUnmappedApiRequest(ServerHttpRequest request, JsonNode body) {
RequestData reqData = this.prepareReqMetadata(request, body);
Mono<ClientResponse> response = commonConnector.getApiResponse(reqData);
return response.map(respData -> {
int latestVersion = respData.headers().header("version").size() == 0 ? getLatestVersion(request) :
Integer.parseInt(respData.headers().header("version").get(0));
List converterList;
if((converterList = converterSequenceProvider.getConverterList(reqData.getRequestPath(), latestVersion, reqData.getVersion())) != null){
return ResponseEntity.ok().body(respData.bodyToMono(JsonNode.class).map(respBody -> convertToDesiredVersion(converterList, respBody)));
}
return ResponseEntity.ok().body(respData.bodyToMono(JsonNode.class));
});
}
. В этом методе мой тип возврата - Mono >>, и я пытаюсь преобразовать его в Mono>, потому что моя команда не соглашается с Mono внутри Mono.
Итак, суть в том, что я не хочу использовать метод bodyToMono, и я не уверен, как использовать метод body.
Пожалуйста, помогите мне здесь.