[카카오 로그인 ] spring 카카오 로그인 토큰

spring에서
첫번 쨰 ,
http:local;8080/oauth2/authorization/kakao 이렇게 보낼때는 리다이렉트를 하고
2. Securing GET /login/oauth2/code/kakao?code
3. HTTP POST https://kauth.kakao.com/oauth/token
토큰 요청후 로그인 성공이 되는데

또 다른 방법인 두번째
https://kauth.kakao.com/oauth/authorize?response_type=code&client_id=${id}&scope=${scpo}&redirect_uri=${uri}

이렇게 보낼때는
Securing GET /login/oauth2/code/kakao?code=
코드로 보내지는 것같은데 https://kauth.kakao.com/oauth/token 토큰으로 자동으로 보내지지 않고 소셜 로그인에 실패했습니다. 에러 메시지 : [authorization_request_not_found]

이렇게 뜹니다.

두번째방법으로 로그인하려면 어떻게 해야하나여 ?

안녕하세요. 카카오 로그인 시도 중 발생하는 문제에 대해 설명드리겠습니다.

첫 번째 방법은 Spring Security OAuth2 프레임워크를 사용하여 카카오 로그인을 처리하는 방식입니다. 이 방식은 Spring Security가 내부적으로 카카오 로그인 과정을 관리하기 때문에 토큰 요청까지 자동으로 처리됩니다.

반면에 두 번째 방법은 수동으로 카카오 로그인 URL을 구성하여 사용자에게 리다이렉트하는 방식입니다. 이 경우, 카카오 로그인 후에 Spring Security가 자동으로 토큰 요청을 처리하지 않기 때문에 [authorization_request_not_found] 오류가 발생할 수 있습니다.

두 번째 방법으로 로그인하려면, 카카오 로그인 후에 수동으로 토큰 요청을 처리해야 합니다. 즉, 카카오 로그인 후에 전달받은 code 파라미터를 사용하여 https://kauth.kakao.com/oauth/token 엔드포인트에 POST 요청을 보내 토큰을 획득해야 합니다.

이 과정을 Spring Security와 통합하려면, /login/oauth2/code/kakao 엔드포인트에서 수동으로 토큰 요청을 처리하고 그 결과를 Spring Security에 전달해야 합니다.

참조 링크:
카카오 로그인 API 문서

[@tim.l @woody.ho]

spring oauth client 사용하지 않고 자체 구현하시려면 아래 예제 참고해주세요.

[rest api 예제] java (spring boot) - 카카오 로그인, 카카오 친구목록 조회, 메시지 발송