본문 바로가기
Web

[Spring] 카카오 로그인 연동 구현하기(REST API) [2]

by 겨울그리고눈 2018. 12. 9.

카카오 로그인 구현 REST API


1) Authorization Code(인증 코드) 받기


카카오 로그인은 OAuth 2.0을 지원하여 OAuth인증의 과정을 거칩니다.

*OAuth 2.0에 대해 알고 싶으시면 https://opentutorials.org/module/3668을 참고해주세요.


먼저 우리는 로그인 사용자의 인증코드를 받아야 합니다.

[Request] 요청

GET /oauth/authorize?client_id={app_key}&redirect_uri={redirect_uri}&response_type=code HTTP/1.1
Host: kauth.kakao.com

그러기 위해서는 일단 이러한 요청을 보내야 합니다.


[Response] 응답

HTTP/1.1 302 Found
Content-Length: 0
Location: {redirect_uri}?code={authorize_code}

요청을 보내면 이러한 응답을 받게 됩니다.



https://kauth.kakao.com/oauth/authorize?client_id={app_key}&redirect_uri={redirect_uri}&response_type=code

이런식으로 요청할 수 있는데 app_key는 발급받은 REST API키를 넣어주시고 


redirect_uri는 http://localhost:8080/kakaologin으로 작성하시면 됩니다. 

*저는 Context Root가 MS라  http://localhost:8080/MS/kakaologin라고 작성하였습니다. 참고해주세요.


요청 URL을 버튼으로 만들어 접속을 하면 카카오 로그인화면이 뜹니다.

로그인을 하게 되면 맵핑을 따로 하지 않아 404오류가 뜨지만 제대로 응답받았다면  이런식으로 code를 반환하게 됩니다.

http://localhost:8080/kakaologin?code=gYDwgxLDm6LsSxWA-7urpubQb6a7Wg1_Vdhjct7j5XAAFnkZDhCw


이 URL을 컨트롤러를 통해 code를 다음과 같이 얻으실 수 있습니다.

댓글