Spring boot kim's cafe/oauth로그인

Springboot 카카오로그인!(2) 토큰받기

디비드킴 2021. 7. 12. 12:11

이제 받은 정보로 토큰을 받을 건데 

 

로그인을 하면

code를 받았을 것이다

SXlEXqO17ZaAxdGvadjYi_E5-Dw66S5bXk6gqncJsY7sJRb_xK97_N3f4kmndEzs7Y2yFAo9dBEAAAF6mK1alQ

이런형식 이다

 

https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api#request-token

 

Kakao Developers

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

developers.kakao.com

토큰을 받으려면

Content-type: application/x-www-form-urlencoded;charset=utf-8

형식으로

POST "https://kauth.kakao.com/oauth/token"

보내줘야 한다

grant_type String authorization_code로 고정 O
client_id String 앱 생성 시 발급받은 REST API O
redirect_uri String 인가 코드가 리다이렉트된 URI O
code String 인가 코드 받기 요청으로 얻은 인가 코드 O

필수 내용들이다

 

service

kakaoLoginService.java

headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);

Content-type: application/x-www-form-urlencoded;charset=utf-8

지정해준다

body.add("grant_type""authorization_code");

body.add("client_id"apikey);

body.add("redirect_uri"callBackUrl);

body.add("code"code);

바디에 넣어준다

 

결과

kakaoToketnDto(token_type=bearer, access_token=7i-_OUXwg_-ZX9yhHyPw1-3QDO0N865gT_XyLQopb9UAAAF6mK1bpA, expires_in=21599, refresh_token=PkYlYWRzQ59th5Ax28unK-zQIEpkTWfozBhFaQopb9UAAAF6mK1bog, refresh_token_expires_in=5183999, scope=account_email profile_nickname)

토큰받기 성공!

 

이제 토큰을 이용해서 

사용자 정보를 받아오자!