플러터 SDK 사용 관련 oauth 문의

플러터를 활용해서 카카오 로그인을 구현하고자 하는데요, 별도의 api 서버를 구성해 앱 구현을 하고자 합니다. 유저 정보는 oauth로 최초 로그인 시 백 서버 디비에 저장하고 서버에서 플러터 앱으로 jwt 토큰을 별도 발급 하려 합니다.

이때 플러터 SDK를 사용하면 oauth 과정을 거쳐 access token을 발급 받고 유저 정보 조회까지 login 메소드 호출 한번에 다 수행이 되는 것으로 이해했는데요, 저는 자체 백 서버에서 유저 정보를 획득하고 jwt를 발급 받고자 하기 때문에 ‘플러터에서 SDK로 로그인 후 api 서버로 access key 전달 → 백에서 kapi로 유저 정보 조회 → 존재하는 valid한 유저이면 jwt 발급’ 의 과정을 거치려 합니다 (앱에서 로그인 하면서 얻은 유저 정보를 전달하기엔 서버에서 valid한 정보인지 판단이 불가능 할 것 같아서요). 이러면 플러터에서도 유저정보 조회가 oauth 로그인 시 일어나고 서버에서도 검증을 위해 요청을 하느라 중복 요청이 생기는데요, 혹시 권장하시는 다른 방법이 있을지 궁금합니다!

안녕하세요.

OAuth2는 인가코드요청과정에 HTTP 302 리다이렉트가 수반되는데요.
말씀하신 것 처럼 SDK는 이를 내부적으로 처리하여 네이티브앱내 SDK가 카카오와의 교신을 일임합니다.

일반적인 OAuth2 Flow로 백엔드 처리가 필요한 경우,
웹뷰를 띄워 인가코드 요청하고 리다이렉트 URL에 개발하신 백엔드URL을 설정하셔서
액세스토큰 발급, 사용자 정보조회 및 JWT 발급까지 백엔드에 일임하는 방법을 사용하실 수 있습니다.

웹뷰를 띄우므로 웹페이지 개발이 필요하고 아래와 같은 방법으로 개발하시면 됩니다.

(1) REST-API 방식
(2) JS SDK 방식
(3) Flutter SDK 웹 방식