개발(57)
-
# [NestJS] 사용자 인증 모듈 생성 및 회원 가입하기 [2단계]
[NestJS] 사용자 인증 모듈 생성 및 회원 가입하기 [2단계]🌞 2025.1.23 인증 : 사용자의 자격을 확인사용자의 자격증명을 기존 정보를 기반으로 확인 후 인증 토큰을 발급함. 사용자에게 부여된 인증 토큰은 특정 기간 동안만 유효 쿠키기반, 토큰기반(쿠키리스) 인증법이 있음. 서버에서 보내준 쿠키를 클라이언트(주로브라우저) 에 저장해 관리함. 토큰은 서버에 상태를 저장할 필요가 없음. 쿠키와 토큰은 서로 장단점이 있음. 토큰은 OAuth 를 사용한 소셜 로긴에서 사용할 예정, 먼저 쿠키 인증을 구현 10.4.1 인증 모듈 만들기 및 설정(1) 인증 모듈 생성📌 auth module > service > controller 순 생성 nest g module auth --no-specnest..
2025.01.27 -
#[node] 환경변수 2탄
2025.01.22 9.8 YAML 파일을 사용해 환경 변수 설정9.8.1 js-yaml 설치npm i js-yamlnpm i -D @types/js-yaml# yamlhttp: port: 3000redis: host: 'localhost' port: 63799.8.3 config.ts 수정(1) yaml 파일 커스텀 설정 파일로 취급. conifg.ts 에 설정 추가import { readFileSync } from "fs";import * as yaml from 'js-yaml'// YAML file loadingconst yamlConfig: Record = yaml.load( readFileSync(`${process.cwd()}/src/envs/config.yaml`, 'utf-8..
2025.01.23 -
#[node] 회원 가입 로그인
chapter 10 부터 grk platform 으로 개발을 하도록 하자.향후 ch 9, 8 을 review 하면서 다시 grk 만들것. AuthModule, AuthController, AuthService 클래스로 구성 UserService 에는 회원정보 추가,수정,삭제 등의 method 있음. 10.1.2 User module 생성nest new grkcd grk nest g module usernest g controller user --no-spec nest g service user --no-specnpm install sqlite3 typeorm @nestjs/typeorm# nest g module projectnest g controller project --no-spec nest g ..
2025.01.23 -
# [node] NodeJS 환경변수 .env 다루기 1탄
9.1 환경 변수 소개다양한 환경의 외부 애플리케이션과 연동 할수 있음. 최소한의 경우 데이터베이스 설정 필수 배포를 어떤 환경에 하느냐에 따라 테스트용, 프로덕션용을 나누어야함. QA 환경도 필요함. 이외에 소스 코드에 들어가면 안된느 민감한 값 등 최소한 환경변수로 설정하거나 vault 같은 소스코드 이외의 외부 저장소에 두어야함. 예를들어 몽고디비 패스워드같은것. 코드로 제어하지 말고 별도의 파일로 두어서 외부 서버에 설정해서 읽어올수있도록 해야함. 그렇지 않으면 설정이 복잡해질수록 환경 변수를 제어하는 코드가 복잡해짐NestJS 환경변수 설정은 ConfigModule 에서 할수있고 설정된 환경변수를 다른 모듈에서 가져다쓰려면 ConfigService 를 주입 받아 사용해야함. 9.2 프로젝트 생성..
2025.01.22 -
[node] Chapter 7. 페이지 네이션 되는 게시판 만들기
Chapter 7. 페이지 네이션 되는 게시판 만들기📚 도서,Node.js백엔드 개발자 되기 Chapter 7 7.1 구조MVC 패턴 구조 만들기 컨트롤러 는 app.js 에서. service 는 post-service.js 하나만 만듬. chapter7 > board > npm init -y : 프로젝트 초기화 7.2.2 익스프레스 설치 및 플로젝트 디렉터리 구조 잡기라이브러리 설치 npm i express@4.17.3# npm i mongodb@4.13.0npm i mongodb@latestmongodb 버전을 4.13.0 으로 하면 4.7 이상 부터는 클라이언트 접속할때version: ServerApiVersion.v1 으로 입력해야함. 이 버전이 안맞으면 db 가 생기지 않으므로 그냥 최신 ..
2025.01.21 -
Chapter 8. NestJS
Chapter 8. NestJS8.1 왜 nestjs ?디렉터리 구조 에따라 아키텍쳐 변경 nestjs 는 이런 아키택쳐 고민을 할 필요없게하는 웹 서버 프레임 워크 다. 누구든 비슷하게 설계하도록 아키텍쳐 짜두어삳. 프로젝트의 복잡성을 잘 관리해준다. node.js 에서 실행하는 서버 사이드 프레임워크타입스크립트를 완벽하게 지원한다. js 최신 스팩을 사용함. 바닐라 자바스크립트 사용시 babel 사용 필수 http 요청 부분을 추상화된 코드를 제공해 익스프레스와 패스티파이를 사용할수 있음. 참고 Spring과 nestjs 차이 Nest,Spring,Express 비교패스티 파이란?익스프레스와 하피(Hapi) 에 영감을 받은 웹 프레임워크 고성능 : 초당 최대 3만개의 요청 처리 가능 확장성 : hoo..
2025.01.21