프로젝트 중에 해당 서비스 회원가입은 카카오 소셜 로그인 + 추가 정보 받아오기 방식으로 진행하기로 했다.
처음 해보는 방식이라 경험이 있던 백엔드 분께 방법을 물어보니,
1. 프론트 → 카카오한테 인가코드 받아오기 → 인가코드 전송해서 카카오한테 엑세스 토큰 받아오기
→ 백엔드한테 엑세스 토큰 전달하기 (프론트 복잡도 ↑)
2. 프론트 → 카카오한테 인가코드 받아오기 → 백엔드한테 인가코드 전달하기 (프론트 복잡도 ↓)
2가지 방법 중에 선택하라고 하셨는데, 한 번 할 거 프론트가 해야할 게 많은 걸 해보고 싶었기에 1번을 선택하였다.
우선 카카오 소셜 로그인은 kakao developers에서 애플리케이션을 추가해야한다.
Kakao Developers
카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
developers.kakao.com
해당 애플리케이션을 클릭하고 스크롤을 조금만 내리면 [설정] 이 보인다.
아래 3가지 모두를 필수로 설정해야 한다.
(동의항목을 안눌러서 애를 먹었던..)
- 카카오 로그인
- 동의 항목
- Redirect URI
- [앱 키] 에서 REST API 키 확인하기
아래는 해당 프론트 코드이다.
에러 코드는 프로젝트마다 다를 것이기에 그저 참고용.
- 카카오 Redirect URI 이동
- 카카오한테 인가 코드 → 액세스 토큰 받아와서 백엔드한테 전달하기
로컬에서는 로그인 과정이 잘됐는데, S3로 배포하니까 카카오 리디렉션 경로가 없다고 뜬다.
알아보니 S3는 정적 웹 호스팅이라 카카오 로그인과 같이 따로 리디렉션을 설정해야 하는 것은 S3 설정만으로는 불가능하다는 것이다. 곧 EC2로 배포하고 해당 글 가져와야겠다.
'Programming > React' 카테고리의 다른 글
React 프로젝트 의존성 버전 업그레이드 하기 - axios (0.18.0 → 1.7.7) (1) | 2024.11.21 |
---|---|
Kakao 소셜 로그인: Local 환경에서는 되고, S3 + Cloudfront 배포 후는 안되는 문제 해결 (1) | 2024.09.23 |
AWS S3로 프론트엔드 배포하기 (0) | 2024.09.07 |
다크모드 GlobalStyle 적용하기 : [Cannot read properties of undefined (reading 'body'), The above error occurred in the <l2> component] (1) | 2024.08.29 |
chart.js React에 적용하기 (0) | 2024.08.21 |