사용한 npm : express-session
신기하게, session사용하면서 안에 아무런 내용도 입력을 안했더니
이렇게 터미널 창에 입력하라고 안내가 나왔다.
resave, saveUninitialized, secret 3개옵션을 설정하라는 것이었다.
내가 보면서 클론 코딩하고 있는게 아래 였는데, 딱 3개 다 입력이 되어있었다.
secret: 내가 설정하는 시크릿 코드(아무거나 써도됨)
resave:
request 때마다 계속 세션 새로고침할거야?
true - 응 새로운 리퀘스트 때마다 세션 새로 줘 (현재 deprecated됨)
false - 아니, 한번 받은 세션은 그대로 둘게
==> 대부분 false를 쓰기 떄문에 true는 deprecated된 상태.
saveUninitialized:
true - 사용자가 방문한 횟수를 알고 싶을때 (현재 deprecated됨)
false - 빈 세션이 쌓이지 않게 함(저장공간을 아낄 수 있음)
==> 대부분 false를 쓰기 떄문에 true는 deprecated된 상태.
---
tmi:
saveUninitialized를 true로 설정하면, 사용자가 로그인 하지 않고 내 페이지를 방문 하기만 해도 세션이 생긴다.
saveUninitialized가 "횟수"를 저장하는 것이기 때문에 내 페이지에 누가 들어오기만 해도 그걸 카운트 하려고 세션을 주는것 같다.
아무튼, false로 설정해두어야 로그인 했을때에만 세션 허용할수 있음.
세션 사용시에 이렇게 내용을 추가 해 주었더니 이제 안내가 사라졌다.
결론? express-session 쓸때 3가지 내용은 꼭 첨부를 해주자.
secret: 내가 설정하는 시크릿키
resave: false
saveUninitialized: false
참고자료
https://fierycoding.tistory.com/36
'백엔드' 카테고리의 다른 글
mongoose.Schema에 new를 붙이는 이유 (0) | 2023.07.04 |
---|---|
mongodb에서 useNewUrlParser, useUnifiedTopology 쓰는 이유 (1) | 2023.07.01 |
sessionStorage (0) | 2023.06.22 |
노드 회원가입, if else문 중복 값 전송에러. Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client (0) | 2023.06.22 |
index.js에는 어떤 내용이 들어가야 할까? (0) | 2023.06.22 |