14
Naver 개발자센터 및 오픈 API 이용 가이드 네이버랩스 옥상훈 2016-05-09

[D2SF] Naver 오픈 API 가이드

Embed Size (px)

Citation preview

Page 1: [D2SF] Naver 오픈 API 가이드

Naver 개발자센터 및 오픈 API 이용 가이드

네이버랩스

옥상훈

2016-05-09

Page 2: [D2SF] Naver 오픈 API 가이드

네이버개발자센터리뉴얼 (2016.1.26)https://developers.naver.com

Page 3: [D2SF] Naver 오픈 API 가이드

(기존)� 네이버 개발자센터http://developer.naver.com/

(기존)� 네이버 로그인 개발자센터https://nid.naver.com/devcenter/main.nhn

개발자 센터통합

[ 기존]

(변경)� 네이버 개발자 센터https://developers.naver.com/

[ 변경]

Page 4: [D2SF] Naver 오픈 API 가이드

새로운API 추가 (beta)

[음성합성]

텍스트를 아나운서 음성으로들으실수있습니다. 현재4개언어(한국어, 영어, 일본어, 중국어)를지원합니다.

[음성인식]

음성 데이터를 텍스트로 변환

해 줍니다.�현재 2개 언어(한국어,�영어)를 지원합니다.

[기계번역]

영어<->한국어,� 중국어<->한

국어,�일본어<->한국어 번역을 지원합니다.

[캡차]

자동 입력 방지를 위해 보안

문자가 포함된 이미지를 전송하고 입력 값을 검증합니다.�

Page 5: [D2SF] Naver 오픈 API 가이드

개발자의 상식이 통하는API

( * 일부 API�들은 추후 개선 예정입니다.� )�

RESTful 하게동작

JSON 으로결과리턴

Error Code는 http status 코드에맞게if (errorCode == 200) {

// success} else if (errorCode >= 400) {

// error }

{"message":{"@type":"response","@service":"naverservice.labs.api","@version":"1.0.0","result":{"translatedText":"I love you."}}}

https://openapi.naver.com/v1/language/translate

Page 6: [D2SF] Naver 오픈 API 가이드

(기존)� 14개의 사항 입력 (변경)� 4개의 필수 사항 입력

제휴신청간소화

기존에 제휴 신청을 하려면 회사명부터 담당자 연락처 까지 14개의 항목을 입력해야 했지만,�API�사용 목적과 예상 사용량,�활용화면만 올려 주시면 됩니다.� �또한 제휴 진행 상황을 확인하는 화면도 함께 추가하였습니다.�

[ 기존] [ 변경]

Page 7: [D2SF] Naver 오픈 API 가이드

API 마이그레이션 FAQ

• 마이그레이션해야하는이유– 2016년 1월 26일에 개편된 개발자센터를 오픈하면서 API�인증체계를 개선하였습니다.��

– 이에 따라 API 호출하는 방식도 함께 변경하였습니다.� .�

• 누가마이그레이션대상인가요?– 네이버와 별도의 제휴키를 발급받아 사용하는 개발사

– 구 개발자센터에서 API�키를 발급받아 사용하는 개발사

• 언제까지마이그레이션해야하나요?– 기존 API�호출 방식은 2016년 12월 말까지만 지원합니다.�

– 따라서 2016년 12월 중순까지 마이그레이션 완료해야 하며,�이는 제휴신청 승인까지 포함이므로 2주 이상 여유를 두시는 것이 좋습니다.�

• 마이그레이션작업은어떻게해야하나요?�– 네이버 개발자센터에서 처리할 것들

• 애플리케이션 정보 등록및 설정

• 제휴 신청

– 애플리케이션에서 해야할 것들

• API�호출 방법변경

• 서비스 URL과애플리케이션 등록 정보 확인

Page 8: [D2SF] Naver 오픈 API 가이드

(기존)� 각 API�별로 API키를 발급 받아 사용 (변경)� API�이용신청 또는 애플리케이션 등록 후API�권한 설정화면에서 사용할 API�체크

API 키대신API 이용신청

기존에는 각 API별로 API�키를 발급받아 사용하였지만,� 이제는 API�이용 신청 또는 애플리케이션을 등록한 다음,�API�권한 설정화면에서 사용하려는 API를 체크해 주시면 됩니다.� API를 호출할 때는 API�키 대신 애플리케이션 등록 시 발급 받은 클라이언트아이디와 시크릿 값을 HTTP헤더에 전송하는 것으로 변경되었습니다.�

[ 기존] [ 변경]

Page 9: [D2SF] Naver 오픈 API 가이드

API 호출방법

[ 비로그인 오픈API ] [ 로그인오픈API]• 방법

– REST�API�호출

– HTTP�헤더에 클라이언트 아이디와 시크릿값 포함해서 호출

• 대상– 지도,�검색,�좌표변환,� 단축 URL

– 음성인식,� 기계번역,� 음성합성, 캡차

• 주의사항– 클라이언트 아이디와 시크릿은 반드시 헤

더값에 포함해야 함

– http� �method 일치 여부 확인 (예: 검색은 GET,�기계번역은 POST)

– 텍스트는 대부분 UTF-8로 인코딩 필요(예: 검색 쿼리, 기계번역 텍스트 값)

• 방법– REST�API�호출

– 로그인 인증 후 발급 받은 접근 토큰 값을 Authorization 헤더에 포함해서 호출

• 대상– 회원 프로필 조회, 블로그 글쓰기, 카페

가입 및 글쓰기, 캘린더 일정 담기

• 주의사항– 단체아이디는 네이버 로그인이 지원되지

않으므로 개인아이디로 호출해야함

– 카페 글쓰기 API에서 텍스트는 UTF-8� ->�MS949로 이중 인코딩을 해야 한글이 깨지지 않음

Page 10: [D2SF] Naver 오픈 API 가이드

검색API 호출데모– 1단계:애플리케이션 등록

(경로1)� Application� ­ 애플리케이션 등록(경로2) 검색 API�개발 가이드 ­ 오픈API이용 버튼 클릭

Page 11: [D2SF] Naver 오픈 API 가이드

검색API 호출데모– 2단계:서비스환경설정

• 주의: 서비스 URL은 실제 환경과 일치해야 인증오류가 발생하지 않음• 로컬에서 개발 중일 때는 127.0.0.1:포트번호로 설정

Page 12: [D2SF] Naver 오픈 API 가이드

검색API 호출데모– 3단계:클라이언트 아이디/시크릿 확인

• 주의: 클라이언트 시크릿 값은 ‘보기’버튼 클릭하면 재발급 가능

Page 13: [D2SF] Naver 오픈 API 가이드

검색API 호출데모– 4단계:API 호출

• 주의: 클라이언트 아이디와 시크릿 값은 http� 헤더로 전송해야 함

// 클라이언트 아이디 및 시크릿 그리고 요청 URL 선언String clientId = ”클라이언트아이디";String clientSecret = ”클라이언트시크릿";String site =

"https://openapi.naver.com/v1/search/news.xml?query=%EB%8C%80%ED%86%B5%EB%A0%B9&start=1&display=100";

try {// HTTP 헤더에 클라이언트 아이디와 시크릿을 추가하기 위한 과정CloseableHttpClient client = HttpClientBuilder.create().build();HttpGet request = new HttpGet(site);request.addHeader("X-Naver-Client-Id", clientId);request.addHeader("X-Naver-Client-Secret", clientSecret);

HttpResponse response = client.execute(request);HttpEntity responseEntity = response.getEntity();String results = null;if(responseEntity!=null) results = EntityUtils.toString(responseEntity);

} catch (Exception e) {System.out.println(e);

}

Page 14: [D2SF] Naver 오픈 API 가이드

- 감사합니다 -

https://developers.naver.com