Я использую Веб-клиент Springs для выполнения HTTP GET вызова.
Как проверить объект ответа GetPersonBasicInfoResWrapper
Это свойство, которое я получил в ответ на мой HTTP-вызов.
Я пытаюсь проверить birthDate
внутри flatMap
, заблокировав объект ответа, но он не выглядит самым функциональным способ сделать это.
Ниже приводится выдержка из моего кода.
private Mono<GetPersonBasicInfoResWrapper> getPersonBasicInfo(Double personId, LocalDate birthDate,
CallerRequestMetaData callerInfo) {
return middlewareWebClient
.get()
.uri(...)
...
...
.exchange()
.flatMap(client -> {
GetPersonBasicInfoResWrapper block = client.bodyToMono(GetPersonBasicInfoResWrapper.class).block();
LocalDate personBirthDate = LocalDateTime.ofInstant(block.getBirthDate().toInstant(),ZoneId.of(Constants.DEFAULT_TIME_ZOME)).toLocalDate();
if (!personBirthDate.equals(birthDate)) {
throw new YakeenRowadException(Errors.INCORRECT_ID_BIRTH_DATE_G, birthDate.toString());
} else
return client.bodyToMono(GetPersonBasicInfoResWrapper.class);
});
}
Любая помощь высоко ценится.