반응형
반응형
1.Intro타입스크립트 환경의 프로젝트를 개발하면서 날짜 처리를 위해 가볍고 강력한 dayjs 라이브러리를 도입했습니다.로컬에서 개발할 때는 dayjs().format()을 찍으면 한국 시간으로 아주 잘 나옵니다.console.log(dayjs().format()); // 출력: 2023-10-27T14:00:00+09:00 그런데 이 코드를 AWS나 Docker 같은 서버 환경에 배포하면 시간이 9시간 느리게(UTC 기준) 나오는 문제가 발생합니다.2.원인분석이유는 아주 간단합니다. day.js의 시간을 어떻게 가져오냐를 알면 답은 아주 쉬워집니다. day.js는 기본적으로 시스템의 시간을 가져오게 되어있습니다.내 컴퓨터 (Local): 윈도우 설정이 '서울'로 되어 있음 -> KST (+09:00)..
이전시리즈 보기https://gapal.tistory.com/71 Nest.js 라이프사이클 완전 정복 (1/3)- 모듈 초기화 단계(Initialization Phase)Nest.JS를 사용하다보면 서비스나 모듈이 언제 생성되고 언제 실행되는지 모를때가 있습니다. 그런 경험이 있다면 Nest.js의 라이프 사이클을 잘 모르기 때문일거라 생각합니다.그렇다면 과연 Nest.jgapal.tistory.comhttps://gapal.tistory.com/84 NestJS 라이프사이클 (2/3): 가드, 파이프, 인터셉터! 요청이 Controller를 통과하는 7단계이전 포스팅에서 onModuleInit()으로 초기 설정이 끝났으며 Nest.js에서 모듈 초기화가 끝났으면 다음 단계로 넘어가게 됩니다!(모듈 초..
Nest.js에서 스웨거를 사용할 때 JWT토큰을 사용하여 인증 인가를 구현하고 테스트하고 싶을 때가 있습니다.다른 프레임워크나 언어에서도 되는것 처럼 Nest.js 환경에서도 해당 기능을 지원하고 있습니다.아래와 같이 공식문서에도 나와 있는데 이 토큰을 어떻게 스웨거 문서에서도 전달하고 테스트하는지 같이 설정해보도록 하겠습니다.https://docs.nestjs.com/openapi/security?utm_source=chatgpt.com Documentation | NestJS - A progressive Node.js frameworkNest is a framework for building efficient, scalable Node.js server-side applications. It use..
typescript로 개발을 할때 날짜를 가지고 이것저것 활요해서 개발을 해야할 때가 있습니다.저는 그럴 때 day.js라는 모듈을 사용하고 있는데요.이모듈을 사용하는 과정에서 발생한 오류를 기록해보고자 합니다.1.오류발생평소와 같이 개발을 한뒤에 빌드를 진행하고 메서드를 실행해 보았습니다.그때, 위처럼 개발도중에 TypeError: Cannot read properties of undefined (reading '$i') 라는 오류문구가 뜨면서 에러가 발생을 하는걸 확인했습니다.2.오류의 원인TypeError: Cannot read properties of undefined (reading '$i') 오류는 말 Days.js를 사용할때 발생하는 문제인데요.이것은 저의 경우엔 Days.js를 아래와 같이..
기존 c# ASP.NET Core를 사용하다가 Nest.js를 사용하고 있는데 제가 개인적으로 가장 불편하게 생각하는게 하나가 있습니다.그건 바로..닷넷 코어 비주얼 스튜디오에서는 디버깅을 시작하면 바로 스웨거 브라우저가 실행되고 디버깅이 끝나면 해당 브라우져가 같이 꺼집니다. 하지만 Nest.js에서 아래와 같이 스웨거를 사용할때 주소 창에 일일히 api-docs 같은 경로를 입력해야만 스웨거에 접속하는 경험을 하실겁니다.저는 원래 닷넷코어의 비주얼스튜디오에서 스웨거를 자동으로 띄워주는 환경에 익숙해져서 그런진 몰라도 저렇게 일일히 치는게 상당히 귀찮습니다..그래서 Nest.js로도 닷넷코어의 스웨거 자동 띄우기를 구현하고자합니다.방법은 아주간단합니다.1.launch.json 설정launch.json을..
Nest.JS를 사용하다보면 서비스나 모듈이 언제 생성되고 언제 실행되는지 모를때가 있습니다. 그런 경험이 있다면 Nest.js의 라이프 사이클을 잘 모르기 때문일거라 생각합니다.그렇다면 과연 Nest.js의 라이프 사이클이 무엇이며 어떻게 동작하는지 또 어떠한 과정이 있는지를 이번 시리즈를 통해서 알아보겠습니다.Nest.js의 라이프 사이클 3단계Nest.js는 내부적으로 아래와 같은 생명 주기를 가지고 있습니다.1.초기화 페이즈(Initializing Phase)2.실행 페이즈 (Running Phase)3.종료 페이즈(Terminating Phase)그 중에서 오늘 확인하면서 알아볼 단계는 초기화 단계 입니다.위의 각 단계마다 동작하는 훅들이 서로 다르므로 이것에 대해 차근차근 알아보도록 하겠습니다..