일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 함수
- lowdb
- nodemon
- Web
- 생활코딩
- dr 학교측
- math
- round
- Web2
- 자동
- 객체정의
- template
- node.js
- nodejs
- 객체
- Generator
- app.js
- tPerRow hn측
- 데이터
- express
- JavaScript
- Passport.js
- passport
- /bin/www
- 설치
- local
- 실행
- sanitize
- 객체란
- 모듈
- Today
- Total
괜찮아 잘하고있어 힘내
5.2. passport 세션이용 2 본문
serializeUser와 deserializeUser에 36번과 42번 내용을 추가한다.
로그인에 성공하면
serializeUser가 실행되고 그안에 35번줄 콘솔에 출력한 user의 내용이 출력된다.
그리고 정상적이라면
deserializeUser 내용도 출력돼야 하는데 만약 안된다면
18) saveUninitialized의 값을 false로 바꿔주면 된다.
------------------------------------------------------------------------------------------------------
[설명]
로그인에 성공하면 59번 줄이 실행된다.
그리고 34번줄의 passport.serializeUser 함수의 callback함수 인자로 authData값이 34번줄의 user가 된다.
그래서 35번에서 user를 출력하면 authData객체의 내용이 출력되는것이다.(로그인한 사용자 정보)
36) 그리고 로그인 성공하면 받아온 사용자 정보중 email의 내용을 세션에 저장한다.
세션 파일 내용을 보면 passport안에 user 라는 이름으로 로그인한 사용자의 이메일이 저장된걸 확인할 수 있다.
40) deserialize는 페이지에 방문할 때 마다 deserializeUser에 callback이 호출되도록 약속돼있다.
호출될때마다 사용자에 대한 데이터가 저장되어있는
이곳에서 사용자의 실제 데이터를 조회해서 가져온다.
-----------------------------------------------------------------------------------------------------------------------
여태까지 한것들 정리 해보려 한다.
28~29) passport를 include 한다.
31) passport를 사용하겠다 라는 코드.
32) 우리 passport는 내부적으로 session을 쓰겠다 라는 뜻.
34~46) 세션을 처리하는 방법에 대한것
48~69) 사용자가 로그인을 시도할때 로그인이 성공했는지 실패했는지를 결정하는 코드.
71~75) 사용자가 로그인을 전송했을때 우리가 passport가 그 로그인 데이터를 처리하기 위한 코드.
'웹 개발 > Passport' 카테고리의 다른 글
6. passport 로그인 확인 (0) | 2021.03.26 |
---|---|
5.3. passport 세션이용 3 (0) | 2021.03.25 |
5.1. passport 세션이용 1 (0) | 2021.03.24 |
4.2. passport 자격확인2 (0) | 2021.03.22 |
4.1. passport 자격확인1 (0) | 2021.03.22 |