Firestore uid

문승훈·2023년 11월 7일

로그인을 로직을 구현 하였을때 사용자의 고유 아이디값이 있다

이것을 가져와서 사용 판별 등 많은것들을 할수 있는 기본적인 저장 방법이다

이것은 웹으로 보자면 로컬스트리지에 token을 저장하는 것 과 같은 것이다.

코드로 설명하기

방법은 엄청 많겠지만 내가 선택한 방법은 flutter 패키지 를 사용하는것이다
flutter_secure_storage 이 패키지인데 이것을 사용하여 나는 저장을 해보았다.

알다시피 패키지를 설치를 하고 밑에 코드 처럼 import를 해준다

import 'package:flutter_secure_storage/flutter_secure_storage.dart';

사실 이정도만 와도 다 왔다는것이다 !!

여기서 코드가 어렵지는 않다.
사람마다 어떻게 어디서 사용하는거냐에 따라 다르지만 나는 로그인 버튼을 눌렀을때 uid가 저장되게 해보았다

Future<void> _signInWithEmailAndPassword(BuildContext context) async {
    try {
      UserCredential userCredential = await _auth.signInWithEmailAndPassword(
        email: _emailController.text,
        password: _passwordController.text,
      );
      String uid = userCredential.user!.uid;
      // Save UID using flutter_secure_storage
      await storage.write(key: 'uid', value: uid);
      // Navigate to a new screen or perform other actions after successful login
      String? storedUid = await storage.read(key: 'uid');
      print('Stored UID: $storedUid');

      // Example: Navigate to Home Screen
      Navigator.push(
        context,
        MaterialPageRoute(builder: (context) => MyBoardApp()),
      );
    } catch (e) {
      print('로그인 실패: $e');
    }
  }

이렇게 사용을 하게 되는데 여기서 String uid 변수 선언한 곳은 정의를 해주는것이다
그뒤에 Write read 라 되있는것들이 있는데 이제 여기서 쓰고 읽는것을 칭하게 된다

더 이상의 설명은 여기까지 하기로 한다

사실 쓰는 법은 많다 링크 공유 공식문서에 잘 나와있음
링크텍스트

profile
차기 GDE 개발자 문승훈

0개의 댓글