Node.js/NestJS

    [NestJS] Passport.js와 session을 사용해 로그인 인증 구현하기

    [NestJS] Passport.js와 session을 사용해 로그인 인증 구현하기

    전제 조건 - cookieParser 를 임포트해 main.ts에 설정을 추가해주었다. : app.use(cookieParser(); - 회원가입 서비스 : ex) signUp, join (메서드 명은 당연히 자유)와 같은 서비스 메서드를 만들어 db에 등록이 가능하다. - 유저 조회 서비스 : ex) findOne, getUser (메서드 명은 당연히 자유) 와 같은 서비스 메서드를 만들어 가입여부 체크가 가능하다. 왜 쓸까? 사용자의 브라우저에 쿠키만 가지고 인증을 하면 위변조, 탈취의 위험이 있다. 그래서 서버에서 인증하고 인증 정보를 서버의 특정 공간에 저장해두는게 바람직하다. => 이게 세션 쿠키 = 세션을 찾는 정보 : ex) 유저아이디, 유저이메일 같이 단순한 식별 정보만 저장 세션 = 인증..

    [NestJS] ValidationPipe를 이용해 Request 편하게 검증하기 (class-validator)

    [NestJS] ValidationPipe를 이용해 Request 편하게 검증하기 (class-validator)

    전제 조건 - controller를 만들어 놨다. (전혀 상관 없다. 그냥 이 글에 시작점이 여기라 적어놨다.) - dto를 만들어 놨다. - 전역으로 선언해주는 방식도 있지만 여기서는 다루지 않는다. 시작 1. 각종 디펜던시를 설치한다. - dependencies "class-validator", "class-transformer" 2. 적용할 dto 안에서 임포트 해주고 적절한 데코레이터를 사용해준다. - 여기에 선언해준 key들은 참고만 해주면 된다. import { IsNotEmpty, IsString, Length, Matches } from "class-validator"; export class createUserDto { @IsNotEmpty() @IsString() @Matches(Reg..