[Node.js] passport 처리과정

으나·2023년 11월 17일
0

NodeJS

목록 보기
4/4
post-thumbnail

🤔 Node.js를 사용하여 트위터 클론 코딩을 하고있다.
로그인 기능을 구현하는데 passport 모듈을 사용중이다.
그래서 패스포트 처리 과정에 대한 기록을 남기고자 한다.

먼저, 패스포트는 로그인을 위해서 필요한 기능들을 자동으로 생성해주는 모듈이다.

로그인 과정

  1. 로그인 요청이 들어온다.
  2. passport.authenticate 메서드를 호출한다.
  3. 로그인 전략을 수행한다.
  4. 로그인 성공 시 사용자 정보 객체와 함께 req.login 호출한다.
  5. req.login 메서드가 passport.serializeUser을 호출한다.
  6. req.session에 사용자 아이디만 저장한다.
  7. 로그인 완료

로그인 이후 과정

  1. 모든 요청에 passport.session() 미들웨어가 passport.deserializeUser 메서드를 호출한다.
  2. req.session에 저장된 아이디로 데이터베이스에서 사용자를 조회한다.
  3. 조회된 사용자 정보를 req.user에 저장한다.
  4. 라우터에서 req.user 객체가 사용 가능하게 된다.
profile
Node.js 공부중 ._.

0개의 댓글