본문 바로가기

분류 전체보기110

[NestJS] Guards 😗 Guard Guard 가 하는 기능은 단 한가지 입니다. 사용자의 요청에 따른 권한처리, 요청에 대한 승인처리를 진행합니다. http://localhost:3000/guard 로 호출했을때, Guard 설정 시, Controller가 호출 되기 전에 요청한 사용자의 권한등을 확인후, 승인된 사용자가 아닐경우 호출을 방지합니다. 호출 순서 : Middleware -> Guard -> pipe Guard는 Middleware 다음에 호출 되며, Pipe는 Guard가 호출된 이후에 호출 됩니다. 테스트 방법 아래의 API 를 생성후, token을 생성해서 호출한다 http://localhost:3000/guard headers Authorization Bearer {token} token 생성 https.. 2023. 9. 8.
[Algorithm] Bubble Sort 알고리즘에대한 자신감이 없어, 시간이 엄청 걸려도 그림만 보고 JS 코드로 코딩해보려고한다. 아래의 그림은, 아래에 첨부되어있는 링크에서 가져온 이미지 이고, 정리가 너무 잘되어있어서 좋았다. 그림만 보고 아래의 코드를 제작해봤는데 나름 그 전에 알고리즘 공부를 했던 것이 도움이 되었나보다. // 7 4 5 1 3 - 오름차순, 버블정렬 let arr = [7, 4, 5, 1, 3]; let len = arr.length; for(let i=0; i 2023. 9. 7.
[NestJS] Pipes Pipe는 Controller arguments에 값을 전달받을떄 사용하며, 아래의 2개의 처리를 함. 1. transformation: 입력 데이터를 원하는 형식으로 변환 2. Validation: 입력 데이터를 평가하고 유효한 경우 변경하지 않고 그대로 전달. 그렇지 않으면 예외 발생 😶 Pipe 동작 시점 Controller가 호출되기 전, Nest는 파이프를 삽입하고 파이프는 arguments를 수신하여 동작한다. transformation, Validation 작업은 위의 시점에 수행되며, 그 후에는 경로 핸들러(Controller)가 호출 됨. /pipe/a/123 호출 -> "123" -> Pipe -> Controller 😶 내장 파이프 ValidationPipe ParseIntPipe P.. 2023. 9. 6.
[NestJS] exception-filters Nest 에는 애플리케이션 전체에서 처리되지 않은 모든 예외를 처리하는 내장 예외 레이어가 함께 제공된다. 애플리케이션 코드에서 예외가 처리되지 않으면 이 계층에서 이를 포착한 다음 사용자에게 친숙한 응답을 자동으로 보낸다. 🙄 표준 예외 던지기 import { Controller, Get, HttpException, HttpStatus } from '@nestjs/common' @Controller("/error/test") export class ExceptionController { @Get() findAll() { throw new HttpException('Forbidden', HttpStatus.FORBIDDEN); } } /* Response { "statusCode": 403, "messa.. 2023. 9. 5.