본문 바로가기

반응형

Flutter-플러터

Flutter X Supabase RLS , 서버에 유저 정보 저장하기 목표는 로그인 후 테이블에 유저를 특정 할 수 있는 uuid 값과 구글 이메일, 닉네임을 저장 하는 것이었습니다. Supabase에는 기본적인 보안 정책이 있습니다. 로그인 된 유저만 해당 DB 테이블을 CRUD를 할 수 있습니다. 그것을 Row-Level Security 라고 부르고 줄여서 RLS 입니다. RLS 링크 https://supabase.com/docs/learn/auth-deep-dive/auth-row-level-security Part Two: Row Level Security | Supabase Docs _10 const { data, error } = await supabase.from('leaderboard').insert({ name: 'Bob', score: 99999 }) s.. 더보기
Flutter- supabaase Google 소셜 로그인 구현 supabase를 알고 난 후 스프링 부트 과외를 멈췄습니다. supabase는 파이어베이스와 비슷한 기능을 가진 DB 서비스입니다. 파이어 베이스와 가장 큰 차이점은 관계형 DB라는 것 입니다. 아직 한국에서는 supabase 관련 자료가 없기도 하고, supabase 다큐먼트도 오픈베타 서비스다 보니 중구난방으로 정리가 되어 있는 느낌이었습다. 더구나 제가 회원가입, 로그인 로직을 잘 이해하지 못한 상태에서 supabase를 이용한 google 소셜 로그인을 진행하려니 너무 힘들었습니다. 그래도 어찌 어찌 성공했습니다. 제가 이해한 supabase 로그인 방법입니다. supabase 로그인 종류 이메일 로그인 텍스트 필드 창에 이메일과 비밀번호 입력 후 진행하는 일방적인 방법입니다. 소셜 로그인 웹 .. 더보기
Flutter -Auth 코드를 짤 때 Session을 변수명으로 쓰는 이유 Chat GPT가 설명해준 글 Flutter에서 인증(Authentication) 코드를 구현할 때 session이라는 변수명을 사용하는 것은 일반적인 명명 관례에 따른 것입니다. 이는 다음과 같은 이유로 널리 사용됩니다: 의미적 명확성: session이라는 단어는 웹 개발과 앱 개발에서 사용자의 로그인 상태를 유지하는 기간을 나타내는 용어로 널리 사용됩니다. 따라서 session 변수는 사용자의 현재 로그인 세션을 나타내는 데 적합합니다. 표준화된 용어: 대부분의 인증 시스템에서는 '세션(Session)'이라는 용어를 사용하여 사용자의 로그인 상태, 권한, 사용자 정보 등을 저장합니다. 개발자들은 이 용어에 익숙하므로 session이라는 변수명을 사용하면 코드의 가독성과 유지보수성이 향상됩니다. 상태 .. 더보기
Flutter - Gap - SizedBox Flutter 공식 유튜브에서 소개 한 패키지 Gap 입니다. https://www.youtube.com/watch?v=MqjCIITfCIA&ab_channel=Flutter 사용법은 간단합니다. yaml 파일에 gap: ^3.0.1 등록해주고 sizedbox 넣는곳에 을 넣기만 하면 됩니다. 스크롤 방향 기준으로 공간이 생긴다는 점입니다. 기존의 Sizedbox는 가로 방향일 때는 width, 세로 방향일 때는 height를 꼭 넣어줘야 했습니다 그걸 편하게 만들어주네요 Sizedbox(height:30) Gap(30) 더보기
Flutter - supabase https://www.youtube.com/watch?v=-sPCQTpGrWI&ab_channel=%EB%8F%84%EA%B7%B8%ED%92%8B https://supabase.com/docs/guides/getting-started/tutorials/with-flutter?database-method=dashboard 더보기
Flutter 구글 스프레드 시트 연동 3 - 데이터 삭제 https://www.youtube.com/watch?v=7RBMsjgAocs&list=TLPQMjkxMDIwMjMfUFMLpVd78w&index=3&ab_channel=HeyFlutter%E2%80%A4com 데이터를 받아 올 때 구글 스페레드 시트가 오류가 나면 대응 하는 코드 Future getUsers() async { try { final users = await UserSheetsApi.getAll(); if (users != null && users.isNotEmpty) { setState(() { this.users = users; }); } else { ScaffoldMessenger.of(context) .showSnackBar(SnackBar(content: Text('데이터를 가져오.. 더보기
Flutter 구글 스프레드 시트를 연동하기 2편 https://www.youtube.com/watch?v=qAEb7VytWP8&list=TLPQMjkxMDIwMjMfUFMLpVd78w&index=3&ab_channel=HeyFlutter%E2%80%A4com 1. 모델에서 int 값과 bool 값을 String으로 decode static User fromJson(Map json) => User( id: jsonDecode(json[UserFields.id]), name: json[UserFields.name], email: json[UserFields.email], isBeginner: jsonDecode(json[UserFields.isBeginner]), ); 2. 구글 스프레드 시트에 있는 row값을 가져오게 하는 코드 (쿼리문 느낌) stat.. 더보기
Flutter 구글 스프레드 시트 이용하기 1. 구글 아이디로 구글 스프레드 시트에 들어가서 파일 만들기 2. 구글 클라우드 api 따오기 3. 만든 구글 스프레드 시트에 공유하기 버튼을 눌러서 구글 클라우드 api 이메일 입력하기 4. 구글 클라우드 api 에 있는 key값 json 파일을 다운받아서 flutter 프로젝트에 입력하기 https://www.youtube.com/watch?v=3UJ6RnWTGIY&ab_channel=HeyFlutter%E2%80%A4com 더보기

반응형