-
카카오 API 로 책 정보 검색 하기JavaScript 2019. 2. 1. 15:57
카카오 API 를 사용하기 위해서는 우선 등록해야 한다.
카카오 디벨로퍼 에 들어가서 아래 쪽에 앱 개발 시작하기를 눌러 등록 후
앱 만들기를 눌러서 애플리케이션을 하나 만들어 주면 사전 설정이 끝난다.카카오에서 제공하는 개발가이드를 확인해보자.
우리는 REST API 중 검색 API를 이용할 것이다.
REST API 개발가이드 REST API 책검색 를 보면Request 에 들어가는 값 과 Response 로 받아오는 JSON 객체의 내용이 나온다.
이제 코드로 작성해보자
이런 책 데이터를 입력 하는 폼에서 ISBN 을 검색해서 나오는 책 데이터를 자동으로 폼에 넣어볼 것이다.
ISBN 에 있는 검색 버튼을 누르면 함수가 작동하도록 button 태그에
onclick="searchISBN($('#isbn').val());"
onclick 이벤트를 작성한다.
이제 작동하는 함수를 만들어 보자.
12345678910111213141516171819202122232425function searchISBN(isbn){event.preventDefault();if(isbn !== undefined && isbn !== ""){$.ajax({url: "https://dapi.kakao.com/v3/search/book",headers: {'Authorization': 'KakaoAK '+ key},type : "get",data:{query: isbn,target:'isbn'},success : function(result){let data = result.documents[0];$("#title").val(data.title);$('#author').val(data.authors);$('#pub').val(data.publisher);$('#price').val(data.price);$('#info').val(data.contents+"...");let date = data.datetime.split('T')[0];$('#date').val(date);$('#translator').val(data.translators);}});}}
isbn 의 내용이 있을 경우에만 작동하도록 했다
ajax를 이용하여 데이터를 전송하고 받아온다.
카카오에서 제공해준 REST API 키 값은 headers 에 넣어주면 되는 데
위에 코드에서는 파일에 저장된 키를 불러오도록 되어 있다.
그냥 쓸 경우에는 headers: {'Authorization': 'KakaoAK key'} 형식으로 적어주면 된다. (KakaoAK 와 key 값 사이에 공백이 있다)
type은 get 방식으로 보내며
data에는 들어가는 내용은 다음과 같다.
JSON 형식으로 넣어줄 내용을 적어준다.
Response 로 받아오는 JSON 객체는 다음과 같은 내용을 담고 있다
콘솔로 result 를 출력해보면 이렇게 나온다.
필요한 내용인 제목, 저자, 출판사, 가격, 책 소개, 발간일, 역자 정보를 받아서 폼에 넣어준다.
이런식으로 내용이 폼에 들어가게 된다.
모든 정보를 주지는 않으니 필요한 정보만 받아오고 부가적인 데이터는 따로 넣어줘야 한다.
반응형'JavaScript' 카테고리의 다른 글
자바스크립트 array 를 object, Map 으로 변환하기 (0) 2021.04.27 러닝 자바스크립트 2장 gulp 명령어 문제 (0) 2020.06.16 JavaScript - 이미지 업로드 미리보기 만들기 (1) 2019.03.09