본문 바로가기
Back-End/Spring

[API] 네이버 검색 API 이용

by 오늘도 756 2021. 10. 8.

안녕하세요.

오늘은 네이버 검색 API를 사용해보겠습니다.

 

1. 아래 링크로 접속해주세요.

https://developers.naver.com/docs/serviceapi/search/blog/blog.md#%EB%B8%94%EB%A1%9C%EA%B7%B8

 

블로그 - Search API

블로그 NAVER Developers - 검색 API 블로그 검색 개발가이드 검색 > 블로그 네이버 블로그 검색 결과를 출력해주는 REST API입니다. 비로그인 오픈 API이므로 GET으로 호출할 때 HTTP Header에 애플리케이션

developers.naver.com

 

2. 로그인 후 하단 오픈API 이용 신청> 버튼을 누릅니다.

 

3. 애플리케이션 이름, 사용API, 비로그인 오픈 API 서비스 환경을 입력합니다.

 

4. 사용자의 Client ID, Client Secret이 생성되었습니다.

 

 

 

 

============================================================================

[코드]

@Slf4j
@RestController
@RequestMapping("/api/server")
public class ApiController {

    @GetMapping("/naver")
    public String naver(){
		
        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> requestEntity = RequestEntity
                .get(uri)
                .header("X-Naver-Client-Id", "자신의 Client ID")
                .header("X-Naver-Client-Secret", "자신의 Client Secret")
                .build();

        ResponseEntity<String> result = restTemplate.exchange(requestEntity, String.class);

        return result.getBody();
    }
}

 

[설명]

🍰 URL 설정

네이버 API 기본 정보를 살펴보면, 요청 URL로 메서드 GET방식으로 작성하라고 합니다.

그래서 코드에서 URI uri에 위의 API기본 정보를 저장합니다.

네이버 요청변수를 넣는다. 요청변수 query는 사용자가 검색할 검색어입니다.

(단 검색어는 UTF-8로 인코딩해야합니다)

 

 

🍰 사용자의 애플리케이션 정보(Client ID, Client Secret) 입력

위에서 생성한 사용자 애플리케이션 정보를 입력하고 실행하면 아래와 같은 결과가 나옵니다.

 

[결과]

 

'Back-End > Spring' 카테고리의 다른 글

Maven Project 생성  (0) 2021.07.29

댓글