Table of contents
1. 개발자 사이트 https://developers.kakao.com/에 접속하여 카카오 계정으로 로그인
2. 시작하기 - 애플리케이션 추가하기
3. 도구 - Maps API - Web - 시작하기
시작하기를 누르면 https://apis.map.kakao.com/web/guide/로 이동된다.
4. 사이트 도메인 등록 (내 애플리케이션 - 앱설정 - 플랫폼 으로 들어가 호스팅 주소 작성)
예 : http://127.0.0.1:8000 를 적어주고 저장
5. 내 애플리케이션 - 앱 설정 - 앱 키에서 REST API KEY 복사
6. config.py에 REST_API_KEY 저장
카카오 REST API 사용하기
1. requests 라이브러리 설치
HTTP 요청을 쉽게 보내기 위해 requests 라이브러리 설치
pip install requests
2. API 요청 코드 작성
API를 사용하여 특정 좌표에 대한 지역 정보를 가져오는 코드 작성하기
- 경도, 위도값이 필수이므로 인자값으로 (x, y)를 넣어준다.
https://developers.kakao.com/docs/latest/ko/local/dev-guide#coord-to-regioncode 해당 사이트로 들어가면 요청 예시에 대해 작성되어 있다.
- 엔드포인트 지정. json을 사용할 것이므로 ${FORMAT} 자리에 .json
https://developers.kakao.com/docs/latest/ko/local/dev-guide#coord-to-regioncode
요청 헤더에 API KEY 전달
API 요청에 필요한 파라미터 설정 (경로와 위도)
GET 요청을 보내고 API 응답을 받음
import requests
from django.shortcuts import render, get_object_or_404
from LocalSharing.config import KAKAO_REST_API_KEY
from rest_framework.views import APIView
from maps.models import Map, MapLikeUser
from maps.serializers import MapSerializer, MapLikeUserSerializer
def kakao_rest_api(longitude, latitude):
url = 'https://dapi.kakao.com/v2/local/geo/coord2regioncode.json'
headers = {'Authorization': f'KakaoAK {KAKAO_REST_API_KEY}'}
params = {'x': longitude, 'y': latitude}
response = requests.get(url, headers=headers, params=params)
if response.status_code == 200:
return response.json()
else:
return None