ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • RestTemplate GET 호출 시 쿼리파람 편하게? 세팅하기
    카테고리 없음 2023. 2. 22. 13:57

    RestTemplate 을 이용해서 GET, POST 호출을 해야 합니다.
    아래가 가장 일반적인 방법의 GET, POST 호출하기 입니다.

    // POST 호출 시 body 포함
    restTemplate.postForObject(url, body, String.class)
    // GET 호출 시 url, url에 쿼리파람(?a=1&b=2)
    restTemplate.getForObject(url, String.class)

    GET 호출 시 쿼리파람을 객체 인스턴스에서 뽑을 수 있을까?
    쉽게 만들고 싶은데 말이죠.

    private <T> String getUrlWithQuery(String url, T paramsObject) {
        LinkedMultiValueMap<String, String> params = new LinkedMultiValueMap<>();
        params.setAll(objectMapper.convertValue(
                paramsObject,
                new TypeReference<>() {
                })
        );
    
        return UriComponentsBuilder.fromUriString(url)
                .queryParams(params)
                .toUriString();
    }

    위와 같이 하면 그나마 조금 쉽게 만들 수 있어요.

    엄청나게 귀찮네요.
    더 좋은 아이디어 없을까요?

Designed by Tistory.