포시코딩

2월15일 - Nest.js에서의 CORS 본문

TIL

2월15일 - Nest.js에서의 CORS

포시 2023. 2. 15. 14:54
728x90

개요

이제는 익숙한 cors 에러

 

express에서 cors를 사용하려면 cors 라이브러리를 설치해 직접 설정까지 해줬어야 했는데

Nest.js에는 기본으로 있지 않을까 싶어 찾아봤더니 역시나 그냥 갖다 쓰면 되게끔 구현되어 있었다.

 

https://docs.nestjs.com/security/cors

 

Documentation | NestJS - A progressive Node.js framework

Nest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is built with TypeScript and combines elements of OOP (Object Oriented Progamming), FP (Functional Programming), and FRP (Functional Reac

docs.nestjs.com

 

사용방법

app.enableCors();

이 한줄 추가해주면 끝이다.

 

src/main.ts

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  app.enableCors();
  app.useGlobalPipes(
    new ValidationPipe({
      whitelist: true,
      forbidNonWhitelisted: true,
      transform: true,
    }),
  );
  await app.listen(8080);
}

혹시나 싶어 class-transformer 를 사용하는 app.useGlobalPipe() 앞 부분에서 적용되게 위치시켰다.

적용 시 문제 없이 다른 클라이언트 서버에서 Nest.js 백엔드 서버로 잘 접근하는걸 확인할 수 있다.

 

세부 설정을 추가할 수도 있는데 일단은 그냥 이렇게 쓰고 

만약 추가할 일이 생긴다면 더 알아봐야겠다.

728x90