/** cookie, session
yarn add cookie-parser 쿠키만들기 편하게 만들어줌.
cookie : 문자열 형식으로, 이전에 방문했던 정보를 기억함.
session : 세션은 데이터를 서버에 저장. 세션ID 를 쿠키에서 저장해, 서버에서 찾을 수 있게함.
let session = {}; 세션{}
app.get('/set-session', function (req, res, next) { (set-session에 들어가면,)
const name = 'sparta';
const uniqueInt = Date.now(); (지금 시간값을 저장함)
session[uniqueInt] = { name }; (세션의 키에 시간값을 넣어서 유니크한 값으로 만듬. value는 name)
res.cookie('sessionKey', uniqueInt); (쿠키를 리스폰, '세션키'를 key값으로 시간값이 들어감.)
return res.status(200).end();
});
app.get('/get-session', function (req, res, next) { (get-session에 들어가면,)
const { sessionKey } = req.cookies; (쿠키에서 받은 value값을 sessionkey로 넣음.)
const name = session[sessionKey]; (sessionKey로 저장된 시간값을 넣어서 name을 도출해냄, 안맞으면 undefined 뜨지않을까)
return res.status(200).json({ name }); (name을 리스폰)
});
토큰과 세션의 차이는
토큰 : 정보의 값을 쿠키로 클라이언트가 가지고있음.
세션 : 정보의 값을 서버에 저장한 다음에, 쿠키로 정보를 찾음!
schema에서 enum은 value를 이 값중 하나를 가져야만 함.
enum resumestatus {
APPLY
DROP
PASS
INTERVIEW1
INTERVIEW2
FINAL_PASS
}
**/