본문 바로가기
프론트엔드

[프론트 엔드] 주소,Map,Local API 차이 간단 정리

by ISA(류) 2022. 1. 21.

웹 사이트를 개발하다 보면 주소와 관련된 작업은 거의 기본적으로 들어간다. 간단한 마크업 문서가 아닌 이상은

배송이나 우편 관련해서 주소 정보가 필수적으로 필요하기 때문이고 해당 데이터를 사용자 개개인이 다 기억하고 있는 경우는 드물기 때문이다. (나는 솔직히 전화번호도 안 외우고 다니는 편이라 주소는 당연히 기억 못 한다.)

기존의 경우 무료 서비스인 kakao(Daum) 우편번호(postcode) 서비스를 이용해왔다. 개인적으로 단순히 주소가 필요한 것이라면 한국에서 이것 이상의 오픈 API를 찾을 수 없을 거라 본다.

또 개인적으로는 해당 API를 조금 더 쉽게 쓰기 위해서 플러그인 형식의 NPM 패키지인 react-daumpost-hook를 배포해본 경험이 있어서 모든 부분을 세세하게 알지는 못해도 편하게 사용하는데 문제없다고 생각해서 다른 API에 대해서 별 생각이 없었다. (아래는 관련된 링크들)

1. https://postcode.map.daum.net/guide

 

Daum 우편번호 서비스

우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다.

postcode.map.daum.net

2. https://www.npmjs.com/package/react-daumpost-hook

 

react-daumpost-hook

다음 카카오에서 무료로 제공하는 우편번호(주소찾기) API를 쉽게 기존 코드에 연결 할 수 있는 hook 패키지 입니다.

www.npmjs.com

 

그런데 최근에 우연찮게 카카오 로컬 API와 네이버 Map API를 사용해야 하는 일이 있어서 2일 정도 관련 공식문서를 뒤적이면서 테스트하고 둘을 연동해서 주소를 찾아오는 기능을 개발했다. 그 과정에서 느낀 점을 간단히 정리해본다.

 

카카오 로컬 API와 카카오 Postcode API의 차이점은 우편번호 API가 순수하게 주소나 우편번호 등의 내용에 집중한다면, 로컬 API의 경우 우편번호를 제공해주지 않는 대신 우편 API가 제공하지 않는 위도와 경도(xy 좌표 데이터) 그리고 산등의 지형 정보, 특정 그룹(업종 등의 내용)을 제공해준다는 점이 있어서 어떤 부분이 필요한지에 따라서 선택하면 될 거 같다.

말 그대로 우편번호와 지역의 특화 차이라고 볼 수 있을 거 같다.

그런 점에서 볼 때 로컬 API의 경우 내비게이션 등 GEO기반으로 한 기능들이 Map API 없이 필요할 때 사용한다고 볼 수 있다.

다만, 카카오 로컬의 경우 API KEY가 있어야 하며, REST API 형식으로만 제공되는데 이번 사용에서 사실 그다지 효용성을 느끼진 못했다.

 

그 이유로 Map API의 경우 주소 관련된 모든 API의 결합 +@ 정도로 볼 수 있고 네이버 Map의 경우 당연하게도 GEO 관련된 API가 자체적으로 내장되어 있기 때문이다.  주소 검색을 Local로 하고 지도를 Map 형태로 띄우는데 배송 주소 관련된 기능을 개발하는데 우편번호가 아닌 Local을 이용할 필요는 없어 보인다. 심지어 카카오 조차도 Postcode와 Kakao Map을 결합해서 쓴다.

x, y를 알 필요 없이, HTML Geolocation API를 통해서 위도, 경도를 얻거나 post code 입력된 주소(또는 검색된 주소)로 Map의 GEO API로 위도, 경도 값을 불러올 수 있으니 단순히 주소와 관련된 기능에는 로컬 API의 효용성이 매우 줄어들게 되는 것 같다. (사실상 필요가 없다.) 특정 업종에 대한 정보가 필요하다거나, 지형 정보가 필요한 경우, 그런 경우에나 쓰면 될 거 같다.(아래는 관련 링크들)

 

결론: 배송이나 주소 관련은 Postcode 와 Map을 쓰는 게 더 효율적이다. 특정 업종 정보나 해당 지형등의 정보가 필요한 경우 Local, Map을 쓰는게 맞다.

 

1. https://developers.kakao.com/docs/latest/ko/local/dev-guide

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

2. https://navermaps.github.io/maps.js.ncp/docs/index.html

 

NAVER Maps API v3

NAVER Maps API v3로 여러분의 지도를 만들어 보세요. 유용한 기술문서와 다양한 예제 코드를 제공합니다.

navermaps.github.io

 

반응형