우선 애플리케이션 등록
query 파라미터에 검색하고자 하는 것 utf-8로 인코딩해서 요청 보냄
컨트롤러
@GetMapping("/naver")
public String naver(){
// String query = "갈비집";
// String encode = Base64.getEncoder().encodeToString(query.getBytes(StandardCharsets.UTF_8));
URI uri = UriComponentsBuilder
.fromUriString("https://openapi.naver.com")
.path("/v1/search/local.json")
.queryParam("query","중국집")
.queryParam("display", 10)
.queryParam("start", 1)
.queryParam("sort", "random")
.encode(Charset.forName("UTF-8"))
.build()
.toUri();
log.info("uri : {}", uri);
RestTemplate restTemplate = new RestTemplate();
// 헤더 추가 위해
RequestEntity<Void> req = RequestEntity
.get(uri)
.header("X-Naver-Client-Id", "RZPgllftwhnJ8xRtXmxk")
.header("X-Naver-Client-Secret", "r1123123112")
.build();
ResponseEntity<String> result = restTemplate.exchange(req, String.class);
return result.getBody();
}
GET 요청이기에 RequestEntity < Void >
요청결과