본문 바로가기
Archive

Cookie & Session

by livemehere 2022. 8. 1.

이전 포스팅까지 커스텀 쿠키 테코레이터를 사용해서, 쿠키를 읽는법과

express Res 객체를 꺼내어서 브라우저에 쿠키를 전달하는 법을 정리했다.

 

하지만 쿠키는 브라우저에 저장됨으로, 여러 보안적인 위험에 노출되어있어서, 정보를 그대로 저장하기에는 위험하다.

그래서 세션이 함께쓰이면서, 중요한 정보는 세션에 저장하고, 쿠키에는 세션ID를 저장한다.

 

설치 및 설정

npm i express-session
npm i -D @types/express-session
  app.use(
    session({
      secret: 'kong-secret',
      resave: false, // 세션의 변경사항이 없어도 새로 저장하는 옵션
      saveUninitialized: false, //초기화 하지 않은 세션을 저장하는 옵션
    }),
  );

 

쓰기 및 읽기

//session 데코레이터로 읽기 쓰기

@Post('/login')
login(@Session() session, @Body() body) { 
    session.userId = body.userId;
    return { res: 'logined!' };
}

@Get('/user')
userInfo(@Session() session) {
    console.log(session);
    return { res: session.userId };
}

 

반응형

'Archive' 카테고리의 다른 글

DB의 시간차이 문제  (0) 2022.08.01
Passport 와 JWT 인증 & Custom Decorator  (0) 2022.08.01
CORS 와 Cookie  (0) 2022.07.31
static 파일제공 & View Engine & React  (0) 2022.07.31
TypeORM 과 API  (0) 2022.07.31