jennet1 님의 블로그
TeamMatch 프로젝트 문제해결 2[ 소셜로그인 ] 본문
문제 해결 과정: API 토큰을 받아오지 못한 문제
문제 설명
클라이언트에서 카카오 로그인 API 요청을 보냈지만 서버에서 토큰 값을 받아오지 못하는 문제가 발생했습니다.
해결 전:
클라이언트에서 요청한 URI: http://localHost:8000/user/kakao/login
해결 후:
클라이언트에서 요청한 URI를 http://127.0.0.1:8000/user/kakao/login으로 변경
원인 분석
- 클라이언트와 서버 간의 주소 불일치
localHost와 127.0.0.1은 동일한 주소를 가리키는 것으로 보일 수 있지만 실제론 다른 주소를 가르키는 것이었다.- localHost: 로컬호스트 주소는 DNS 설정에 따라 다르게 해석될 수 있고 가끔은 크로스 도메인 요청(CORS) 문제나 보안 설정에 영향을 미칠 수 있다.
따라서, 클라이언트와 서버의 요청 주소가 동일하지 않으면 CORS 설정 또는 서버가 잘못된 도메인으로 요청을 처리하려고 할 수 있습니다. 이로 인해 토큰 값을 올바르게 받아오지 못한 것입니다.
해결 방법
- 클라이언트와 서버의 요청 주소를 일치시켜야 합니다. 이를 통해 서버가 클라이언트의 요청을 정확히 인식하고 올바르게 응답할 수 있도록 합니다.
추가적인 고려 사항:
- CORS 설정 확인: 로컬 환경에서 작업 시 클라이언트와 서버의 주소가 다르면 CORS 오류가 발생할 수 있습니다. 127.0.0.1로 설정을 일치시키면 이 문제를 방지할 수 있습니다.
- 서버와 클라이언트 주소 일치: 프로젝트에서 다른 주소를 사용할 경우, 서버와 클라이언트 모두 동일한 주소를 사용하도록 설정하는 것이 중요합니다. 이를 통해 일관된 환경에서 API 호출을 할 수 있습니다.
결론
클라이언트와 서버의 요청 주소가 일치하지 않으면 토큰 값을 받아올 수 없습니다. 따라서, 클라이언트와 서버에서 동일한 주소를 사용하도록 설정하여 문제를 해결했습니다.
http://127.0.0.1:8000/user/kakao/login

'개발 프로젝트 > LOL-TEAM-MATCH' 카테고리의 다른 글
| TeamMatch 프로젝트 문제해결 3[ 세션과 쿠키 ] (1) | 2024.12.29 |
|---|---|
| TeamMatch 프로젝트 문제해결 1[ 밸런스 알고리즘 ] (0) | 2024.12.29 |