nodejs

    [NestJs] 따라하면서 배우는 NestJs - 3 (pipe와 validation)

    [NestJs] 따라하면서 배우는 NestJs - 3 (pipe와 validation)

    ✅ Pipe 데이터 변환과 데이터 유효성 검사를 위한 클래스 핸들러 레벨 / 파라미터 레벨 / 글로벌 레벨의 3가지 레벨에서 사용할 수 있음 ✅ 모듈 설치 npm i class-validator class-transformer --save 📝 class-validator docs https://github.com/typestack/class-validator#manual-validation ✅ class-validator 적용 📝 ./boards/dto/create-board.dto.ts import { IsNotEmpty } from 'class-validator'; export class CreateBoardDto { @IsNotEmpty() title: string; @IsNotEmpty() des..

    [NestJs] 따라하면서 배우는 NestJs - 2 (기본적인 CRUD 수행)

    [NestJs] 따라하면서 배우는 NestJs - 2 (기본적인 CRUD 수행)

    ✅ 서비스 의존성 주입 및 전체 READ 📝 ./boards/boards.service.ts import { Injectable } from '@nestjs/common'; @Injectable() export class BoardsService { //일단 로컬 메모리에 저장하는 방식으로 private boards = []; getAllBoards() { return this.boards; } } 📝 ./boards/boards.controller.ts import { Controller, Get } from '@nestjs/common'; import { BoardsService } from './boards.service'; @Controller('boards') export class Boards..

    [NestJs] 따라하면서 배우는 NestJs - 1 (기본 세팅 및 구조 파악)

    [NestJs] 따라하면서 배우는 NestJs - 1 (기본 세팅 및 구조 파악)

    방학 동안 열심히 백엔드 기술 스택 쌓기 위한 노력의 일환 spring 공부하기 + nestjs 공부하기 두개가 비슷한 점이 많아서 아직까지는 할만한 것 같다 무엇보다 곧 진행하는 프로젝트에서 nestjs를 사용하기 때문에 얼른 공부해둬야 싶어서 부랴부랴 강의 들으면서 정리하는 중이다 ✅ Nestjs 설치 npm i -g @nestjs/cli cli를 global 로 설치해서 어떤 디렉토리에서도 쓸 수 있도록 한다 ✅ 프로젝트 생성 nest new (project-name) 또는 nest new ./ nest cli 를 설치했기 때문에 nest 명령어를 쓸 수 있다 현재 디렉토리인 ./를 입력하면 현재 위치에 프로젝트를 생성한다 ✅ 새 모듈 추가 nest g module (module-name) 처음 공..

    [Nodejs] passport 모듈로 로컬 로그인 전략 구현하기

    ✅ passport 모듈 회원가입과 로그인을 구현할 때 세션과 쿠키 처리등의 복잡한 작업을 쉽게 해주는 모듈 검증되어 있어 안전하게 사용할 수 있다 passport 모듈로 카카오, 구글, 페이스북 로그인을 위한 OAuth 도 사용 가능하다 ✅ 의존성 추가 및 설치 npm i passport passport-local passport-kakao bcrypt 🔨 app.js const passport = require('passport'); ... const passportConfig = require('./passport'); ... passportConfig(); app.use(passport.initialize()); app.use(passport.session()); passport.initializ..

    [Nodejs] Sequelize 로 SQL 데이터베이스 연동하기

    ✅ Sequelize ORM으로 분류되는 라이브러리 즉 자바스크립트 객체와 데이터베이스의 릴레이션을 매핑해주는 도구이다 📝ORM(Object- relational Mapping) 객체 관계 매핑 데이터베이스와 객체지향 프로그래밍 언어 사이에 호환되지 않는 데이터를 변환하는 프로그래밍 기법 객체지향 언어에서 사용할 수 있는 가상 객체 DB를 구축하는 방법이다 ✅ Sequelize 의존성 추가 및 초기 세팅 npm i sequelize sequelize-cli mysql2 npx sequelize init 🔨 config/config.json { "development": { "username": "root", "password": null, "database": "database_development", ..