아 그거 뭐였지

[NestJS] Url params Id의 타입 변환하기 - Pipes 본문

Back-End

[NestJS] Url params Id의 타입 변환하기 - Pipes

승발자 2022. 1. 30. 23:32
728x90
반응형

프론트 엔드 개발을 하다보면 URL Parms Id 값을 가지고 데이터를 핸들링 할때가 종종있다.

/data/1234 <-- 이와같은 Url일때 1234라는 값이 눈으로 봐서는 숫자지만 타입을 체크해보면 String이다. 

 

자바스크립트에서는 그냥 가져다 써도 별 문제가 없을수있지만, Number타입으로 핸들링을 하여야 할때는 문제가 생길수있다.

그때 NestJS의 Pipes를 이용하면 Params Id의 타입을 바꿔줄수있다. 

import { Controller, Delete, Get, HttpException, Param, ParseIntPipe, Patch, Post, Put, UseFilters } from '@nestjs/common';
import { HttpExceptionFilter } from 'src/http-exception-filter';
import { CatsService } from './cats.service';

@Controller('cats')
@UseFilters(HttpExceptionFilter)
export class CatsController {
  constructor(private readonly catsService: CatsService){}
	
  @Get(':id')
  // ParesIntPipe로인해 string이였던 id의 타입이 Number타입으로 바뀐다.
  getOneCat(@Param('id',ParseIntPipe) param: Number){
    console.log(param);
    console.log(typeof(param));
    return 'one cat';
  }
 }
 
728x90
반응형
Comments