안녕하세요 개발자님…! 카카오톡 로그인을 마친 후 사이트 도메인 페이지로 이동하지 않는 문제가 있어서 글을 올리게 되었습니다…
제가 생각한 카카오톡 로그인 과정은 아래와 같습니다.(사용자의 입장에서)
- 사용자가 프론트엔드 화면에서 카카오톡으로 로그인하기 버튼을 누른다.
- 프론트엔드에서 카카오링크 uri로 리다이렉트 한다(https://kauth.kakao.com/oauth/authorize?client_id={0}&redirect_uri={1}&response_type=code&scope=account_email) ← 이 uri를 말하는 것입니다!
- 리다이렉트된 로그인 창에서 사용자가 자신의 카카오톡 아이디, 패스워드를 입력한다.(추가정보 동의페이지도 선택한다)
- 로그인 성공 후, 애플리케이션에 리다이렉트 URI 부분에 등록된 uri가 호출되고 이 api로 인가코드가 전달 되고 (이 부분이 헷갈리는데 제 WAS 서버에 리다이렉트 URI랑 똑같은 경로를 가진 api 가 있습니다. 이게 호출된다는 뜻이에요…!)
- 이 api 에서 access_token을 가져오는 rest api를 호출하고, 받아온 access_token으로 사용자의 이메일을 rest api로 가져온다. 그리고 서비스 데이터베이스에 이미 등록된 이메일이면 바로 서비스 고유의 토큰을 리턴해주고, 등록되지 않은 이메일이면 해당 이메일로 가입시킨 후 서비스 고유의 토큰을 리턴해준다. (이메일을 가진 사용자라고 가정했습니다.)
- 다시 프론트엔드 페이지로 돌아가는데 이 때는 로그인이 돼서 사용자 정보가 뜬 상태로 돌아가진다.
근데 제가 실행하면 실제로는 5번 까지는 되는데 6번에서 어떤 프론트엔드 페이지로 돌아가는게 아니라 하얀 바탕에 리턴5번에서의 리턴값(발급된 토큰 값만…)만 뜹니다.
그리고 아래는 제 리다이렉트 uri인 api 입니다
제가 원하는 건 원래 로그인 페이지였던
이 페이지로 제가 얻은 사용자 정보, 서비스 토큰 (한마디로 리다이렉트 api의 리턴값입니다)과 함께 돌아가는 겁니다ㅜㅜ
참고로 저기 뷰 버튼을 누르면 카카오톡 로그인이 진행돼요… 로그인 자체는 되고 사용자 정보도 받아와지는데…어떻게 해야할까요?