본문 바로가기
개발

oauth 2.0 redirect 동작 유의할 점

by 양현정 2024. 4. 4.

로그인 기능을 라이브러리화 시켜서 외부 프로젝트에서도 로그인 기능을 사용할 수 있게 하려고 한다.

oauth 2.0은 소셜 로그인에서 자주 쓰이는 인증 방식이다.

 

흔히 아는 카카오, 구글, 페이스북, 네이버를 통해 로그인을 시도하면

code={code값}&redirect_uri={redirect_uri}&state={state값}

 

대부분 저런 형태로 리다이렉트 url이 올 것이다. 

하지만 이번 개발을 통해 새로 알게된 사실이 있다면 각 소셜마다 url의 형태가 조금씩 다르게 온다는 것이다.

 

예를 들어 state값을 추출해서 사용하고 싶은데 구글 redirect url에서는 &가 붙은 파라미터가 아닌 #(해쉬)가 붙어서 오기 떄문에 #(해쉬)를 제거하는 로직이 추가되어야 한다.

그리고 각 소셜마다 인증하는 방식이 조금씩 다르기 때문에 공식 문서를 읽어보거나 콘솔로 찍어서 확인해봐야 한다

 

관련 자료 : https://cloud.google.com/apigee/docs/api-platform/security/oauth/oauth-introduction?hl=ko