안드로이드 REST Api를 이용한 로그인에 대해 문의 남깁니다

안녕하세요. 이제 막 안드로이드 개발을 시작한 초보 개발자입니다.
백엔드 서버와 함께 어플리케이션을 만들려고 합니다.
JWT를 이용해서 로그인을 하려하고 현재 흐름은
로그인 → redirect url로 인가코드를 받음 → 서버로 code를 보냄 → 서버에서 access token을 받고, JWT 발급
이 형식으로 진행을 하려합니다.
원래 생각했던 방식은 딥링크를 이용해서 다시 앱으로 돌아온 후 code를 받아서 서버에 보내려고 했는데
로그인을 하면 브라우저에서 앱으로 돌아오지를 않아서 code를 서버에 보내 줄 수가 없는 상황입니다.

저 방식대로 카카오 로그인을 이용한다면 webView를 이용해서 url을 확인 후 다시 원래 앱화면으로 돌아가는 방법 밖에는 없을까요?
아니면 클라이언트(안드로이드)에서 SDK를 이용해서 로그인을 구현하고 서버에 저장만 하는게 추천하시는 방식일까여?

원래 생각했던 방식은 딥링크를 이용해서 다시 앱으로 돌아온 후 code를 받아서 서버에 보내려고 했는데
로그인을 하면 브라우저에서 앱으로 돌아오지를 않아서 code를 서버에 보내 줄 수가 없는 상황입니다.

안녕하세요. front가 앱이군요.

(1) 앱으로 리다이렉트 처리를 해주는 기능이 SDK에 포함되어 있으므로 SDK를 적용하시는게 좋을 것 같습니다.

Android | Kakao Developers 문서
Android | Kakao Developers 문서


저 방식대로 카카오 로그인을 이용한다면 
webView를 이용해서 url을 확인 후 다시 원래 앱화면으로 돌아가는 방법 밖에는 없을까요?

(2) OAuth2 는 기본적으로 웹브라우저에서 리다이렉트 하는형태로 동작합니다. REST-API방식 또는 JS SDK authorize방식으로 카카오 로그인 구현하신다면, 브라우저상 리다이렉트가 되어야합니다.


만약 webView를 이용해서 처리하신다면 아래 가이드 참고해주세요.

JavaScript | Kakao Developers 문서


클라이언트(안드로이드)에서 로그인 구현하시고 webView를 사용할 일이 없으시다면 SDK 를 이용한 구현방식을 추천드립니다.

감사합니다.

상세한 답변 정말 감사합니다 ㅠㅠ

서버 쪽에서 다른 플랫폼에 대응하려면 REST api를 유지해야 한하고 하시는 상황이라 REST api 방식을 이용하고 인가 코드를 건네주는 방식으로 갈 거 같은데 그러면 웹 뷰를 쓰는 방법밖에 없는 거죠?

sdk를 쓰게 된다면 서버에서 JWT를 발급해서 요청 때마다 사용하려고 했는데 그 방식이 어려워지지 않을까 해서요 ㅠ

서버 쪽에서 다른 플랫폼에 대응하려면 REST api를 유지해야 한하고 하시는 상황이라 REST api 방식을 이용하고 인가 코드를 건네주는 방식으로 갈 거 같은데 그러면 웹 뷰를 쓰는 방법밖에 없는 거죠?

카카오 로그인과 JWT토큰 발급을 로직으로 엮지 않고
SDK로 카카오 로그인한뒤 로그인 성공이라면, 서버에 JWT토큰 발급받는 것도 방법일 것 같습니다.

1개의 좋아요

답변 감사합니다!
바로 적용해보겠습니다!