배꼽파지 않도록 잘 개발해요

[NestJS] res.cookie를 사용하기 위해 Express의 Response를 import 해야함 본문

BackEnd/Express / NestJS

[NestJS] res.cookie를 사용하기 위해 Express의 Response를 import 해야함

꼽파 2024. 8. 26. 13:14

프로젝트 리팩토링을 하고 있는데, Access token은 리스폰스의 리턴값으로 보내주고, Refresh token은 쿠키에 담아서 전송하기로 하였다.

 

res.cookie를 사용하기 위해 Express의 Response를 import

NestJS에서 Request와 Response 객체를 사용하는 방법은 두 가지가 있다.

  1. Express로부터 직접 가져온다
  2. NestJS의 @nestjs/common에서 가져온다

 

VSCode에서 자동 import를 설정해 놓으면 NestJS의 @nestjs/common에서 가져오게 된다.
그런데 쿠키 전송을 위해 res.cookie를 사용하려면 Express의 Response 객체를 사용해야 한다.


res를 import하고 res.cookie를 입력했는데 이렇게 인식하지 못하는 오류가 발생하였다.

 

import { Body, Controller, Delete, Get, Post, Query, Req, Res, UnauthorizedException } from '@nestjs/common';
import { Request as expReq, Response as expRes } from 'express';


이렇게 express에서 import한 것들은 expReq, expRes로 사용할 수 있도록 설정하였다.


express에서 import한 response를 사용해주면 이렇게 오류가 해결된다.

 

NestJS와 Express의 호환성을 고려하여, 필요한 경우 Express의 객체를 직접 사용하는 것이 일반적이라고 한다.

728x90