카카오 개발자로 검색해서 페이지로 들어가보도록 합시다
Kakao Developers
카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
developers.kakao.com
로그인을 하도록 합시다
내 애플리케이션을 클릭하면 애플리케이션 추가하기가 있습니다.
앱이름이나 사업자명은 원하시는데로 입력해주면 됩니다.
이미지는 딱히 업로드 안 해도 됩니다.
추가가 됩니다.
당연히 그렇듯이 키 값이 중요합니다.
허용 IP 주소도 등록해줍니다.
로컬 굳이 등록할 필요 없을까요 ? 저는 그냥 했습니다 .
플랫폼 설정하기 뭘까요
들어가봅니다.
내가 제공하고자 하는 서비스에 맞게 선택하면 될 것 같습니다.
지금은 개발 단계이니
http://localhost:3000 뭐 이런
개발 서버 url 을 일단 등록하면 됩니다.
https://developers.kakao.com/docs/latest/ko/getting-started/app#platform-web
Kakao Developers
카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
developers.kakao.com
가이드도 친절하게 설명 되어있네요
<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey={APPKEY}&libraries=services"></script>
해당 스크립트를 사용하면 map api를 불러 올수 있습니다
해당 APPKEY 는
JavaScript 키를 가져와서 사용하면 됩니다.
그러면 여기서 그치지 않고
간단하게
검색기능까지 구현해보겠습니다.
<div id="search">
<input id="search_input" placeholder="목적지를 입력해주세요" />
<button id="search_button">검색</button>
</div>
간단하게 검색 input 창과 button을 만들어줍니다 .
그리고 저는 JQuery를 사용하고싶습니다.
jQuery CDN
jQuery CDN – Latest Stable Versions jQuery Core Showing the latest stable release in each major branch. See all versions of jQuery Core. jQuery 3.x jQuery 2.x jQuery 1.x jQuery Migrate jQuery UI Showing the latest stable release for the current and legac
releases.jquery.com
<script
src="https://code.jquery.com/jquery-3.7.1.min.js"
integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo="
crossorigin="anonymous"
></script>
JQuery는 요렇게 사용하면 됩니다.
해당 input 과 button의 이벤트를 생성해보겠습니다.
let ps = new kakao.maps.services.Places();
let search_arr = [];
$("#search_input").on("keydown", function (e) {
if (e.keyCode == 13) {
let content = $(this).val();
ps.keywordSearch(content, placeSearchCB);
}
});
$("#search_button").on("click", function (e) {
let content = $("search_input").val();
ps.keywordSearch(content, placeSearchCB);
});
보시면 kakao.maps에서 제공하고 있는 서비스를 이용하고 있습니다.
function placeSearchCB(data, status, pagination) {
if (status === kakao.maps.services.Status.OK) {
let target = data[0];
const lat = target.y;
const lng = target.x;
const latlng = new naver.maps.LatLng(lat, lng);
marker = new naver.maps.Marker({
position: latlng,
map: map,
});
if (search_arr.length == 0) {
search_arr.push(marker);
} else {
search_arr.push(marker);
let pre_marker = search_arr.slice(0, 1);
pre_marker[0].setMap(null);
}
map.setZoom(16, false);
map.panTo(latlng);
console.log(target);
} else {
alert("검색결과가 없습니다");
}
}
https://apis.map.kakao.com/web/documentation/#services_Places_keywordSearch
해당 함수관련한 내용은 위의 링크를 통해 상세히 확인 및 추가 개발 가능합니다 .
'SW Dev Portfolio' 카테고리의 다른 글
DBever를 사용하여 MySQL를 PostgreSQL로 마이그레션 하는 방법 (1) | 2023.10.18 |
---|---|
정보처리기사 : 소프트웨어 설계에서 자주 발생하는 문제에 대한 일반적이고 반복적인 해결 방법을 무엇이라고 하는가? (0) | 2023.10.13 |
Java 백엔드 기반 DBMS (MSSQL , MYSQL)으로 대량의 데이터를 컨트롤 및 서버 과부화를 막기 위한 고찰 (0) | 2023.10.12 |
JAVA 백엔드 데이터베이스 연동 패턴 및 아키텍쳐 (1) | 2023.10.04 |
아파치 톰캣의 메모리 사용량을 증가시켜주는 bat 파일 코드 (0) | 2023.09.25 |
Jotai 전역 변수 관리 라이브러리 (0) | 2023.09.21 |