[항해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 취업 리부트 코스를 수강하고 작성한 콘텐츠 입니다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.