firebase.auth().onAuthStateChanged()에 대해서 질문합니다.
3067
작성한 질문수 39
안녕하세요. 항상 강의 잘보고 있습니다.
제 질문은
useEffect의 []안에 딱히 넣은 변수가 없어서 onAuthStateChanged는 한번만 실행된것 같은데
user가 바뀔때마다 바뀐 정보가 실시간으로 업데이트 되는 것인가요?? 어떻게 그게 가능한지 지금으로서는 잘 이해가 안되네요^^; onAuthStateChanged메소드 대신에 currentUser프로퍼티 사용하면 맨 처음 브라우저로 열었을때는 유저가 널로 오다가 두번째부터 그 전에 저장되어있던 유저가 오는데 그 이유는 무엇인지...
onAuthStateChanged가 실시간 양방향 메소드라서 계속 통신하고 있는 거라면 어떤거는 실시간 양방향 통신을 하고 어떤거는 안하는데 어떻게 구분할 수 있는지 알 수 있을까요?? (죄송합니다ㅜ 머릿속이 혼란스러워 질문이 두서가 없네효...)
저는 Auth가 세션개념이라고 생각했는데.. 유저 전용 데이터베이스인가요??? 한번 로그인 하면 언제 다시 들어가도 유지 되는데 컴퓨터를 껏다 키면 로그인 정보 사라지게 할 순 없을까요?? ㅜ_ㅜ
또.. auth에 photoURL 업데이트하고 데이터베이스에 이미지URL 따로 저장하는 이유가 무엇인가요??
이상입니다..
답변 2
0
안녕하세요 쭁님
파이어 베이스의 장점중에 하나가 실시간 통신을 굉장히 쉽게 가능하게 해준 다는 것입니다 ~
강의중에 Rest VS Websockets이란 부분있죠? 거기에 관한 부분입니다.
그래서 여기 onAuthStateChanged 메소드에 대해서 설명하는 부분을 보시면 obseerver 옵저버라고 나와있잖아요 ~ 그래서 이거는 계속 지켜보고 있는걸 얘기하는 것입니다. 그러기에 한번만 useEffect에 넣어주시면 계속 관찰을 하고 있습니다.

그리고 원래 애플리케이션에서는 User 데이터베이스를 통해서 인증같은 부분을 다 처리할 수 있겠지만
Firebase에서는 Auth 서비스를 따로 두어서 그걸 통해서 훨씬 강한 인증과 Oauth(소셜 로그인)등 여러 가지 방법으로 로그인 하는걸 쉽게 구현해 두어서 Auth 서비스와 User 데이테베이스 모두에 정보를 넣어주셔야합니다 ~
수고하세요 ~
ESlint
0
133
1
현 강의자료는 이해는 했는데, 그럼 전 강의자료는 이젠 활용을 못하나요?
0
97
0
배포 후 빈페이지
0
148
1
notification 관련 질문에 AI가 엉뚱하게 대답하여 다시 질문합니다.
0
139
1
notification 관련 부분은 예전 강의를 들어야 하나요?
0
141
1
npm run build시 오류가 있습니다.
0
221
1
이미지 업로드시 403에러가 발생하는데 해결법이 있을까요?
0
769
1
이건 어디에 저장이 되는 것인가요?? redux에 저장이 되는 것인가요??
0
255
1
eslint 질문 있습니다.
0
233
1
npm create react app
0
313
2
[리덕스 미들웨어]강의 중에 createStore에서 막혔습니다.
0
526
3
회원가입 유효성 부분 페이지 안뜨는 이유 좀요....
0
283
1
강의 pdf 파일
0
431
2
파이어베이스 파일 삭제, 사진 업로드 기능 오류
0
329
1
firebase 초기화 오류
0
595
1
mime-types 패키지를 import 할 때 에러 발생
0
279
1
리덕스 스토어에 로그인 유저 정보가 저장이 되지 않는 문제
0
340
1
강의 리뉴얼 일정을 알 수 있을까요?
0
369
1
완성본으로 제공된 코드를 구동시켜보려면
2
407
1
DB와 강의 리뉴얼
0
504
1
next.js 환경에서 이 수업을 들을 수 있나요?
0
388
1
Cannot read properties of undefined (reading 'isLoading') 오류 해결법 혹시 알 수 있을까요...
0
508
1
addChatRoom 함수 작성시
0
276
1
강의 도표 자료 다운을 받으면, zip파일에 아무것도 들어있지않다고 나옵니다.
0
245
1





