TIL

WebClient BodyInserters.fromValue

하얀잔디 2023. 7. 14. 14:42
BodyInserters.fromValue(inputDTO)

는.. 안에 DTO는 객체여야한다. 내가 왜 스트링으로 보냈지? 8시간 날림..

 

List<PersonaMetaDto> outputDTO = client.post()
        .uri(url)
        .header(JwtFilter.AUTHORIZATION_HEADER, requestAttr.getRequest().getHeader(JwtFilter.AUTHORIZATION_HEADER))
        .header(TokenProvider.getHeaderUserId(), requestAttr.getRequest().getHeader(TokenProvider.getHeaderUserId())) //TokenProvider public 설정
        .body(BodyInserters.fromValue(inputDTO))
        .accept(MediaType.APPLICATION_JSON)
        .retrieve()
        .onStatus(status -> status.is4xxClientError() || status.is5xxServerError(), response -> {
            return response.bodyToMono(String.class)
                    .flatMap(errorMessage -> {
                        // Save error log
                        log.error("Error in Common Persona GET " + errorMessage);
                        return Mono.error(new Exception(errorMessage));
                    });
        })
        .bodyToFlux(PersonaMetaDto.class)
        .collectList()
        .block();

'TIL' 카테고리의 다른 글

k8s 주소  (0) 2023.08.08
프로젝트 TIMEZONE 설정  (0) 2023.08.04
HTTP vs HTTPS  (0) 2023.07.13
PVC  (1) 2023.07.13
http 상태코드 정리  (0) 2023.06.23