# nest

123개의 포스트
post-thumbnail

Nest.js 시작

https://nodejs.org/ko/node.js를 설치하지 않았다면, 오류가 날 수 있으니 없는 사람은 다운로그 ㄱㄱ 16.17.0 LTS 버전이 안정화된 버전이니, 이거 쓰시면 됩니다.(2022.09.12기준)https://docs.nestjs

2022년 9월 12일
·
0개의 댓글
·

17. typeORM 및 DB관련 기본 개념

라이브러리에 대한 설명을 구체적으로 모두 다 작성하는데는 한계가 있다. 필자 또한 이 블로그를 typeORM을 사용하면서 참고하기 위한 목적으로 쓰지만, 기본적으로 공식문서를 참고하는 것이 가장 정확하다. 이에, 구체적인 내용은 공식문서를 참고하는 것이 좋으며, 필자도

2022년 9월 4일
·
0개의 댓글
·

16. mongoDB에서 관계설정

기존에는 mogoose 버전은 6 이상, nestjs/mongoose는 9이상 버전이었다.mongoDB에서 관계 설정과 관련해서는 populate method를 이용하는데, 이와 관련해서 mongoose 버전이 6 이상인 경우, nestjs/mongoose 버전 8 이

2022년 9월 3일
·
0개의 댓글
·

nest + jwt

https://any-ting.tistory.com/119https://any-ting.tistory.com/118https://velog.io/@algo2000/pj01-12내 코드는 비공개

2022년 8월 30일
·
0개의 댓글
·

15. multer를 이용한 이미지 업로드/서빙

@types/multercommon 폴더의 utiles라는 폴더 안에 설정하는 것이 가독성이 좋다.파일 구성을 요약하자면, 클라이언트에게서 받은 파일을 저장할 폴더의 이름과 위치, 파일의 이름을 일괄적으로 정하는 option을 생성하는 것이다.multerOption은

2022년 8월 28일
·
0개의 댓글
·

14. passport X jwt를 이용한 사용자 인증

Nest에서 client에서 들어온 request가 response로 반환될 때까지의 flow는 다음과 같다.request -> middleware -> guard(인증 검토) -> interceptor -> controller -> httpexception filte

2022년 8월 24일
·
0개의 댓글
·

13. jwt 이용한 사용자 인증 모듈 구현

passport와 jwt를 이용한다는 전제하에, 다음과 같은 준비물이 필요하다.JWT는 Json-web-token의 약자이다. 즉, json 포멧을 사용하여 사용자 인증과 관련된 데이터를 담고 있는 웹 기반 토큰이다.구조는 Header, payload, signatur

2022년 8월 23일
·
0개의 댓글
·

12. 순환참조

개발 과정에서 A모듈 <-> B모듈이 각각 서로를 참조해야하는 사례가 생긴다.이 때, nest에서는 순환 참조를 위해서는 각 모듈에서 다음과 같이 코드를 작성해야한다.

2022년 8월 23일
·
0개의 댓글
·

11. 3 layered architecture pattern

express를 사용하면서는, model - controller - service 패턴에 따른 작업을 주로 하였다. 각 계층의 역할은 다음과 같다.model = DB 연결과 관련된 내용controller = request와 response의 처리service = 비즈니

2022년 8월 23일
·
0개의 댓글
·

10. swagger

"@nestjs/swagger": "^6.0.5"자세한 준비물은 공식문서 참고하면 된다.express를 사용할 때에는 swagger-autogen을 이용해서 API 명세서 작업을 했었다. 편리하긴 했지만, 수작업으로 하드코딩해야하는 사항들이 많아, 그렇게 꼼꼼하게 sw

2022년 8월 23일
·
0개의 댓글
·

09. DTO

Data Transfer Object계층 간 데이터 교환 시 규격을 나타내는 객체를 의미한다.주로 Client <-> Server, Server 내 Controller - Service 등 계층 간 데이터 교환 시 Validation 목적으로 쓰인다.주로 기능 폴

2022년 8월 22일
·
0개의 댓글
·

08. schema 의존성 주입/ response용 parameter 생성

Client 단에 DB query문에 따른 결과를 있는 그대로 response로 전달할 경우, 공개가 민감한 정보까지 함께 전달될 수 있기 때문이다.비즈니스 로직 단에서 response로 보낼 데이터들을 일일이 변수에 할당할 수 있으나, 이는 하드코딩으로, 재사용성이

2022년 8월 22일
·
0개의 댓글
·

07. mongoDB 스키마 설계와 Class-validator

Nest에서 mongoDB의 스키마 설게는 다음과 같이 Class와 decoration 패턴을 이용한다.Prop에는 각 데이터의 옵션을 설정한다.Option에는 생성된 스키마와 관련된 옵션을 넣는다.Class로 생성된 인스턴스에 삽입되는 데이터의 validation을

2022년 8월 21일
·
0개의 댓글
·
post-thumbnail

02. Nest.js에서 Prisma 사용하기 (Postgres, AWS LightSail, DBeaver)

앞서 Nest 초기 세팅을 했으니 이제 DB를 세팅해야 한다. DB는 PostgreSQL를, ORM은 Prisma를 사용했으며 클라우드에서 RDS를 사용하기 위해 AWS의 LightSail를 활용했다. 또한 DB Tool로 DBeaver를 사용했다. 왜 Postgr

2022년 8월 21일
·
2개의 댓글
·

scss

So we can write the selector inside of the navigation selector.

2022년 8월 20일
·
0개의 댓글
·

nest 도커 빌드시 Could not find TypeScript configuration file tsconfig build json 에러 해결

https://stackoverflow.com/questions/61687679/nest-js-build-does-does-not-generate-the-dist-folder이걸 보고 tsconfig.json에 다음 옵션을 작성하면된다. 이미 있으면 false

2022년 8월 18일
·
0개의 댓글
·
post-thumbnail

NestJS + Github Actions + AWS + Docker 에러

링크를 들어가면 어디서 에러가 났는지 확인할 수 있다.내 경우는 IAM 권한 문제때문에 발생한 것이였다.

2022년 8월 18일
·
0개의 댓글
·

06. mongoose DB 연결, 환경변수

@nestjs/mongoosemongooseapp.module에서 mongooseModule을 import한다.@nestjs/configexpress에서는 'dotenv' 패키지를 이용했으나, nest에서는 이를 이용한다.전역 환경에 .env를 생성한다.(src가 아니

2022년 8월 17일
·
0개의 댓글
·

05. Interceptor & AOP 패턴

관점지향 프로그래밍으로 횡단 관심사의 분리를 통해 코드의 모듈성을 증가시킴으로써, 코드의 역할/책임의 분리, 가독성과 그에 따른 생산성 향상을 지향하는 프로그래밍 패러다임이다.nest의 요청 처리 로직 상에서 Interceptor 는 이런 AOP 패턴의 가치에 따른

2022년 8월 16일
·
0개의 댓글
·