express-session
터미널에서 npm install express-session 을 이용해 설치한다.
npm install express-session
express-session은 세션 관리용 미들웨어이다. 세션은 사용자별로 req.session 객체 안에 저장된다.
이 라이브러리는 세션을 관리할 때 클라이언트에 세션 쿠키를 전송한다. 안전하게 쿠키를 전송하기 위해서는 쿠키에 서명을 추가하는 것이 좋은데, 이때 secret의 값이 필요하다.
const session = require("express-session");
app.use(
session({
resave: false,
saveUninitialized: false,
secret: process.env.COOKIE_SECRET,
cookie: {
httpOnly: true,
secure: false,
},
})
);
● resave : 요청이 올 때, 세션에 수정 사항이 생기지 않더라도 세션을 다시 저장할지 설정한다.
● saveUninitialized : 세션에 저장할 내역이 없더라도, 처음부터 세션을 생성할지 설정하는 것.
● secret : 세션 쿠키를 서명할 때 필요한 값. cookie-parser를 사용하고 있다면, 같게 설정하는 것이 좋다. 이름은 name 옵션으로 설정한다. 기본 이름은 connect.sid 이다.
● cooket : 세션 쿠키에 대한 설정이다. 일반적인 쿠키 옵션이 제공된다. httpOnly를 true로 설정하면 클라이언트에서 쿠키를 확인할 수 없도록 만들 수 있다. secure는 https가 아닌 환경에서 사용할 수 있을지 없을지에 대한 여부인데, false를 하면 http에서도 사용할 수 있으나 보안의 문제 때문에 배포 시에는 true로 설정하는 것이 좋다.
'NODE.JS(Express)' 카테고리의 다른 글
[Express] 미들웨어란? (0) | 2023.01.19 |
---|---|
[Node.js] Express에서 Router 사용하기 (0) | 2023.01.02 |
[Node.js] .env 환경변수 파일 생성과 이용 (0) | 2023.01.02 |
[Node.js] body-parser 사용법 (0) | 2022.12.05 |
댓글