<aside> 💭
카카오 OAuth + 서버 검증 → oneTimeToken으로 Access / Refresh 교환 후 zustand / 쿠키로 관리하는 토큰 기반 로그인!!
</aside>
→ 사용자가 카카오로 로그인하기 버튼을 누르면 클라이언트가 카카오 서버, kauth.kakao.com/oauth 로 앱 키와 redirect url을 파라미터에 포함해 요청을 보내게 됨. 이때, redirect url는 서버로 설정해 인가 코드가 서버에게 전달되도록 함.
→ 이후 서버는 요청을 보낸 사용자가 회원인지 아닌지를 판별해서 클라이언트를 다시 리다이렉트 시킴 (리다이렉트 시킬 경로는 클라이언트가 서버에게 전달)
→ 회원이면 홈으로, 회원이 아니면 회원가입 페이지로 이동함!!
사용자가 회원가입 페이지로 이동했을 때! 서버는 쿠키로 tempToken을 클라이언트에게 전달함. 그렇다면, 회원가입 페이지에서 /api/v1/member/signup 요청할 때 이 tempToken이 자동으로 쿠키에 붙어서 서버로 전송될 것이다.
→ 사용자가 회원가입 정보를 모두 입력하고 저장을 누르면 회원가입 요청을 서버에 보내게 됨. 이때 로그인 시도 단계에서 전달받은 tempToken을 쿠키에 담아서 서버로 전달함!!
여기에서, 회원가입을 성공하면 다시 kauth.kakao.com/oauth 로 요청을 보내어야 함.
이때는 회원가입 성공 응답을 트리거로 요청이 발생해야 함!!!! (랜딩 페이지로 다시 이동 X)
→ requestKakaoAuthorize.ts 유틸함수 사용