React Native 카카오 로그인 Firebase 연동

React Native 카카오 로그인 + Firebase 연동

계획 패턴이란 객체 지향 디자인 패턴 중 하나로 알고리즘을 정의하고 각각을 캡슐화하여 그들을 상호 교체 가능하게 제작하는 패턴입니다. 객체가 할 수 있는 행위를 하나하나씩 정의하여 입력 받은 타입에 대한 처리를 각각의 파일에서 동적으로 수행합니다.


SDK RestAPI 차이
SDK RestAPI 차이

SDK RestAPI 차이

SDK와 RestAPI 방식의 차이는 첫차례 처리하는 장소 두차례 범용성 이 두가지를 뽑을 수 있겠다. SDK는 보통 client단에서 요청 응답이 진행됩니다. rest api보다. 코드 진행이 단순하지만 복수의 클라이언트가 하나의 서버를 공유할 경우 최소한 의뢰인 수 만큼의 코드 처리가 필요합니다. 그리고 안드로이드버전이나 자바스크립트 버전을 쓸 경우 코드 진행도 전혀 달라 서로 호환이 불가능하다는 게 단점입니다.

반대로 RestAPI 방식은 Server에서 코드 처리가 가능합니다. 그렇다보니 복수의 client가 서버에 있는 하나의 코드에 요청만 하면 되므로 훨씬 효율적이라 할 수 있어요.

인증 코드 받기 Request
인증 코드 받기 Request

인증 코드 받기 Request

GET oauthauthorize?clientidRESTAPIKEYredirecturiREDIRECTURIresponsetypecode HTTP1.1Host kauth.kakao.com 최종 로그인 요청 주소 GET httpskauth.kakao.comoauthauthorize?clientid2aef492ccc8fd9af1b188a17a89a355aredirecturihttplocalhost8000authkakaocallbackresponsetypecode 로그인 버튼 생성 후 적용 loginform.js 카카오 로그인을 눌러보시면 로그인 페이지가 뜨고 실제 카카오 계정으로 로그인 하면 다음과 같은 주소가 반환됩니다.

STEP 토큰 받기

인가 코드를 가지고 있는 상태로 POST oauthtoken 으로 요청을 하면, 응답에 토큰이 담겨옵니다. Request message모양 코드에 넣을 내용아님.POST oauthtoken HTTP1.1Host kauth.kakao.comContenttype applicationxwwwformurlencodedcharsetutf8

토큰을 받기 위해서 위와 같이 request message를 보낸다.

OAuth란?

Open Auth를 뜻하는 말로 인증 처리를 대신해주는 서비스입니다. 기존의 로그인 방법 OAuth 적용 OAuth 로그인의 사용 목적 스프링에서 정규적으로 제공해주는 OAuth 주체는 Facebook과 google입니다. OAuthClient 라이브러리에서 Facebook, google을 통한 인증, 권한 처리가 정말 쉽게 이뤄진다. 스프링 프로젝트를 만들 때 OAuthClient를 체크해서 만들면 되는데 하지만 지금은 직접 구축해볼 것입니다.

이용자 토큰 받기

이 인증된 인증 코드를 통해 엑세스 토큰을 부여받을 것입니다. 카카오 리소스 서버에 등록된 내 개인정보를 응답받기 위해서는 엑세스 토큰이 필요하기 때문입니다.

사실 카카오 로그인이 완전한 것은 아니지만 인증 코드는 받았기 때문에 인증된 사용자로 로그인 처리를 해줄 수도 있긴 하지만 그 사람의 정보를 알려면 엑세스 토큰으로 카카오 리소스 서버에 접근애야 하기 때문에 의미가 없습니다..

코레일톡 앱 간편로그인 연동하기

1. 코레일톡 앱을 실행하고, 오른쪽 상단의 전체메뉴equiv를 누릅니다. 2. 회원정보할인권 할인증 버튼을 누릅니다. 3. 휴대폰번호혹은 회원번호, 이메일주소와 비밀번호를 입력하고 로그인 버튼을 누릅니다. 4. 간편로그인 연동은 카카오톡, 네이버, 구글, 디지털원패스로 로그인 방법이 있는데요. 저는 카카오톡을 연동합니다.

자주 묻는 질문

SDK RestAPI 차이

SDK와 RestAPI 방식의 차이는 첫차례 처리하는 장소 두차례 범용성 이 두가지를 뽑을 수 있겠다. 좀 더 자세한 사항은 본문을 참고하시기 바랍니다.

인증 코드 받기

GET oauthauthorize?clientidRESTAPIKEYredirecturiREDIRECTURIresponsetypecode HTTP1. 궁금한 내용은 본문을 참고하시기 바랍니다.

STEP 토큰 받기

인가 코드를 가지고 있는 상태로 POST oauthtoken 으로 요청을 하면, 응답에 토큰이 담겨옵니다. 자세한 내용은 본문을 참고하시기 바랍니다.