전체 글
Nest.js에서 모듈간의 의존성 관리하기
Nest.js를 사용해서 개발하게 되면 도메인 모델을 기준으로 수많은 모듈이 생기게 된다. 도메인 모델 별로 나누기 때문에 해당 파일이 어떤 역할을 하는지 명시적으로 알 수 있어 매우 편리하지만 서로 다른 모듈끼리 의존성을 관리해줘야 한다. 서로 다른 모듈의 의존 관계 설정 아래는 예시 코드이다. // user.module.ts import { Module } from '@nestjs/common'; import { UserService } from './user.service'; @Module({ providers: [UserService], exports: [UserService], }) export class UserModule {} // auth.module.ts import { Module } ..
AuthGuard 예외처리 조건 만들기
AuthGuard는 Nestjs에서 제공하는 미들웨어이다. AuthGuard는 Strategy와 사용되는데 보통 Passport 라이브러리를 활용하여 다양한 인증 전략을 구성할 수 있게 해 준다. 아래는 예시 코드이다. 보통 Controller layer에서 데코레이터를 활용해 사용할 수 있다. (라우터에서도 사용 가능함) 여기서 'jwt'는 Passport를 활용해 작성된 Strategy이고, 거기에 decorator로 만든 user.decorator까지 사용하게 되면 http 통신이 올 때 먼저 토큰 검증부터 진행할 수 있다. // Controller layer @Controller('example') export class ExampleController { constructor(private ex..
그냥 일기 (20230406)
1. 심바(김채원) 탄생 예정일 보다 4일 빠른 3월 21일에 심바가 태어났다. 갑자기 출산휴가를 사용하고 앞에 놓인 일들을 하나씩 처리하면서 지냈다. 이제 부양가족이 생겼으니 더 열심히 해야겠다. (최근까지 조리원에서 아내랑 시간을 보내다보니 뭐가 됐든 엄마역할이 제일 힘들다는 걸 느꼈다) 2. copilot, chatgpt 지금까지 copilot과 chatgpt가 내 성장에 방해가 된다는 생각이 들어 사용하지 않았다. 하지만 어느 날 문득 해당 AI 툴들을 활용해서 좀 더 좋은 생산성을 갖는 게 앞으로 내 커리어에 있어서 더 좋은 방향이라는 생각이 들어 홀린 듯이 결제 후 사용 중이다. 둘 다 너무 편리하게 사용하고 있지만 AI가 추천해 준 코드에 문제가 없는지 확인하는 단계가 꼭 필요하다는 생각..