포스트

[항해99 취업 리부트 코스 학습일지] WIL 2일차

항해99 에서 진행하는 취업 리부트 코스 3기를 수강하며 작성하는 TIL 포스트입니다.


프로젝트 WIL Week 2

프로젝트를 진행하면서 새로운 서비스들을 배우느라 진도가 많이 늦어졌다.

Firebase

지속성 종류

총 3가지 상태가 존재한다.

Enum설명
firebase.auth.Auth.Persistence.LOCAL‘local’브라우저 창이 닫히거나 React Native에서 활동이 폐기된 경우에도 상태가 유지됨을 나타냅니다. 이 상태를 삭제하려면 명시적으로 로그아웃해야 합니다. Firebase 인증 웹 세션은 단일 호스트 출처이며 단일 도메인의 경우에만 유지된다는 점에 유의하세요.
firebase.auth.Auth.Persistence.SESSION‘session’현재의 세션이나 탭에서만 상태가 유지되며 사용자가 인증된 탭이나 창이 닫히면 삭제됨을 나타냅니다. 웹 앱에만 적용됩니다.
firebase.auth.Auth.Persistence.NONE‘none’상태가 메모리에만 저장되며 창이나 활동이 새로고침되면 삭제됨을 나타냅니다.

웹브라우저와 React Native 앱의 기본값은 브라우저가 이 스토리지 메커니즘을 지원하는 경우(예: 서드 파티 쿠키 및 데이터가 사용 설정됨) local이며, Node.js 백엔드 앱의 기본값은 none입니다.

인증 상태 지속성 수정

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { getAuth, setPersistence, signInWithEmailAndPassword, browserSessionPersistence } from "firebase/auth";

const auth = getAuth();
setPersistence(auth, browserSessionPersistence)
  .then(() => {
    // Existing and future Auth states are now persisted in the current
    // session only. Closing the window would clear any existing state even
    // if a user forgets to sign out.
    // ...
    // New sign-in will be persisted with session persistence.
    return signInWithEmailAndPassword(auth, email, password);
  })
  .catch((error) => {
    // Handle Errors here.
    const errorCode = error.code;
    const errorMessage = error.message;
  });

참조) firebase 인증관련 에러코드

https://firebase.google.com/docs/reference/js/auth?_gl=1ul1bgh_up*MQ#autherrorcodes


항해99 취업 리부트 코스를 수강하고 작성한 콘텐츠 입니다.

항해99 - 온라인 코딩 부트캠프 항해99

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.