반응형
cookie | session
cookie는 웹서버에서 클라이언트에게 발급하는 것이고, session은 서버에서 이 cookie를 통하여 클라이언트의 정보를 저장해놓은 것이다. 따라서 클라이언트가 서버에 접속할 때마다, 클라이언트는 웹 서버에게 cookie를 포함하여 요청하고, 웹서버는 이 cookie를 통해 서버에 저장해 놓은 session 에서 검색하여 클라이언트의 정보를 알아낸다.
passport serialize, deserialize
passport.serializeUser((user,done)=>{
done(null,user);
});
passport.deserializeUser((user,done)=>{
done(null, user);
});
serializeUser은 로그인 시 done(null, user)를 통해서 session 에 user의 정보를 저장한다. deserializeUser은 클라이언트의 요청이 있을 때마다, 클라이언트의 cookie로 session을 조회하여 user의 정보를 가져온다.
serializeUser에서 session에 user의 정보를 저장할때 id, password 등 모든 정보를 저장하는 것이아니라, id만 저장하여 deserializeUser에서 user의 정보를 다시 조회하는 방식을 사용해야한다. session에 저장되는 정보의 양이 많은 경우 서버의 자원을 많이 소모하기 때문이다.
반응형
'tech documents > node' 카테고리의 다른 글
mongoose 특정 db와 collection 연결 (0) | 2022.03.01 |
---|---|
npm command 윈도우에서 폴더 삭제 (0) | 2022.02.26 |
[Cheerio],[Axios] 모듈을 사용한 웹 크롤링 - 3 (0) | 2020.04.03 |
[Cheerio],[Axios] 모듈을 사용한 웹 크롤링 - 2 (0) | 2020.04.01 |
댓글