Nestjs 따라잡기 9 인증토큰 인증 순서client에서 로그인 요청server에서 로그인 체크 후 토큰을 생성하고 accesstoken 을 담아서 전달api 시 header에 accesstoken 포함해서 호출accesstoken 을 이용하여 인증, 권한 확인 후 결과 returnJWT 토큰 구조header : 알고리즘 , 토큰 타입payload : 데이터verify signature : 인증 코드설치npm install --save @nestjs/jwt구현 서버사이드/NodeJS 2024.08.25
Nestjs 따라잡기 8 비밀번호 암호화 - bcrypt 2가지 방식의 최종 결과는 동일generate a salt and hash on separate function calls - 별도의 함수 호출에서 솔트와 해시 생성auto-gen a salt and hash - 솔트와 해시 자동 생성사용법설치 : npm install --save bcrypt @types/bcryptimport * as bcrypt from 'bcrypt'user.password =await bcrypt.hash(user.password,10);await bcrypt.compare(ipw,opw) 서버사이드/NodeJS 2024.08.24
Nestjs 따라잡기 6 인증 - 회원가입DB 테이블 구조를 위한 entityauth module 생성 > service,controller 구현실행 결과저장 완료중복 저장 서버사이드/NodeJS 2024.08.22
Nestjs 따라잡기 5 TypeORM라이브러리 설치 : npm install --save @nestjs/typeorm typeorm mysql2 @nestjs/configapp.modules.ts 에 import 추가entity 생성service@InjectRepository 를 이용해 CRUD 구현controllerrouting 정의 서버사이드/NodeJS 2024.08.21
Nestjs 따라잡기 4 미들웨어클라이언트의 요청을 라우터 핸들러가 받기 전에 가로채 다른 작업을 처리공통 실행해야 하는 인증, 로깅요청과 응답 객체를 변경 가능요청의 validation 체크사용법@Injectable 데코레이터 사용NestMiddleware 인터페이스를 implements해서 사용Module class 내부에 configure 사용하여 선언 -> NestModule implements.forRoutes({path: '...', method:RequestMethod.Get} );.forRoutes( {path: 'ab*cd',method:RequestMethod.ALL} );MiddlewareConsumerMiddleware 관리를 위한 내장 모듈헬퍼클래스를 사용하여 여러 스타일로 미들웨어를 설정forRoutes.. 서버사이드/NodeJS 2024.08.20
Nestjs 따라잡기 3 providerprovider는 servies,repositories,factories,helpers 등종속성에 의해 inject 가능객체의 생성 및 연결은 nest runtime 시스템에 위임컨트롤러는 http 요청을 처리 그 외 작업은 provider에게 위임service생성 : nest g service dogs@Injectable : Nest 컨테이너에서 관리할 수 있는 클래스 임을 선언 서버사이드/NodeJS 2024.08.19
Nestjs 따라잡기 1 Nestjs 란 무엇인가?nodejs 서버 애플리케이션 프레임워크express 기반typescript 사용, javascript도 가능oopfp-function외부 모듈을 이용 가능unit 테스트와 e2e 테스트 툴 제공탄생배경자바스크립트의 자유도로 architecture의 구성이 어렵다이를 해결하기 위해 angular 아키텍처 사상을 기반으로 개발좋은점java,spring과 같이 규칙을 제공기본적으로 라우팅, 보안 기능 제공외부모듈 통한 확장 가능java+spring 사용자라면 아키텍처 구조가 비슷angular 사용자도 기본적인 사용법이 동일설치nestjs CLI , nodejs, vs code 설치vscode > 폴더열기 >nestjs터미널 > npm i -g @nestjs/clinest new ne.. 서버사이드/NodeJS 2024.07.29