seong
로그인 - Provider, 자동로그인 본문
자동 로그인은 디바이스에 토큰 값이 있다면 서버에 유저 정보를 한번 초기화 시켜준다.
그리고 mainPaged에서 isLogin을 통해서 어디로 이동 할지 정해주었다.
Controller
- 로그인이 성공하면 서버에서 토큰 값을 주는데, 이 값을 디바이스 토큰에 저장해야한다 , 이 부분은 토큰 및 세션은 전역에서 사용해야 하기 때문에 UserServcie로 안적고 LocalService에서 처리 해준다.
- 로그인 이후 Navigator에서 페이지 이동의 Stack관리를 해주어야 하는데 로그인을 하면 이전 페이지에 대한 정보는 어차피 필요 없기 때문에 RemoveUntil를 사용했다.
LocalService
- 디바이스에 토큰을 저장하기 위한 라이브러리 사용 : https://pub.dev/packages/flutter_secure_storage
Storage의 토큰 값을 읽는 방법 : read(key)
Storage의 토큰 쓰는 방법 : write(key,value)
Storage의 토큰 삭제 방법 : delete(key)
- 먼저 디바이스에 저장되어 있는 토큰 값을 읽는다
- 토큰 값이 있다면 토큰 값으로 서버에 세션 초기화를 실행
Service
- 로그인이 성공하면 response에 있던 토큰 값을 secureStorage에 write로 저장해준다.이 때 저장은 Key, value 로 해준다.
UserSession
- 세션에 담기는 정보는 유저의 정보, 토큰 값, 로그인 했는지 여부
'Flutter > 중계 플랫폼 프로젝트' 카테고리의 다른 글
유저 정보 수정 - Provider (0) | 2022.12.20 |
---|---|
유저 정보 수정 페이지 (0) | 2022.12.20 |
회원가입 Provider적용 후 서버와 통신 (0) | 2022.12.20 |
회원가입 페이지 (1) | 2022.12.20 |
Flutter - iamport 카카오페이 결제 테스트 및 결제 내역 확인 (0) | 2022.12.16 |