codequick-darkmode-logo
로그인회원 가입
Node.js 코스

교육 과정:

Node.js 코스

26 레슨 180 온라인 코딩 질문


이 강좌에서 다룰 주제는 무엇입니까?

Node.js 소개

  1. 서문 및 강좌 개요:

    • 서문입니다.

    • 강좌에서 다룰 내용과 Node.js에 대한 소개입니다.

    • 코드 저장소 작업에 대한 강조입니다.

  1. 기본 서버 작성하기:

    • 간단한 첫 번째 서버 구축하기.

    • 서버가 무엇인지 설명하고 HTTP 요청 및 응답 처리하기.

    • 상태 코드 이해 및 JSON 대 HTML 반환하기.

  1. 요청의 기본 처리:

    • API 서버 엔드포인트 소개.

    • 요청을 처리하기 위한 다중 라우트 정의.

  1. 서버 요청의 고급 처리:

    • HTTP 요청 구조 이해하기.

    • 상태 코드 설명 및 서버 동작.

  1. Restful API 작성 준비:

    • Restful API 소개.

    • QueryString 및 요청 매개변수 이해하기.

파일 시스템 작업

  1. Node.js에서 파일 읽기:

    • 파일 시스템 모듈(fs) 작업하기.

    • readFile 함수를 비동기적으로 사용하기.

    • readFileSync 함수를 동기적으로 사용하기.

    • fs와 path 모듈 소개.

    • 여러 엔드포인트가 있는 서버 생성하기.

    • 텍스트와 JSON 파일 저장하기.

  1. Node.js에서 파일 저장하기:

    • writeFile 함수를 비동기적으로 사용하여 파일 쓰기.

    • writeFileSync 함수를 동기적으로 사용하여 파일 쓰기.

    • 서버에서의 오류 처리하기.

  1. Node.js에서 파일 삭제하기:

    • unlinkSync를 사용하여 파일 삭제하기.

    • 파일 시스템에서 디렉토리 사용하기.

    • 파일 시스템에 파일이 존재하는지 확인하는 함수.

  1. POST 요청 처리하기:

    • 기본 서버 아키텍처.

    • post 요청 처리.

    • Postman을 사용하여 get 및 post 요청 생성.

  1. 서버에서 검증 사용하기:

    • 의미 있는 서버 작성하기.

    • 서버에서 검증 및 오류 사용하기.

    • 여러 요청을 처리하는 서버 생성하기 (운영 체제에서 파일 읽기, 쓰기, 삭제하기).

Express를 사용한 서버 작성

  1. Express 사용 소개:

    • express 라이브러리에 대한 배경.

    • 서버를 작성하기 위해 express 라이브러리 사용하기.

    • send, sendStatus, 그리고 json 함수 사용하기.

    • get 요청 처리하기.

  1. 쿼리스트링 및 파라미터 처리하기:

    • express와 함께 req.query 사용하기.

    • express와 함께 req.params 사용하기.

    • 파일 시스템을 사용하여 관리자 데이터 서버 작성하기.

  1. 서버에서 POST 요청 처리하기:

    • express를 사용하여 post 요청 처리하기.

    • 미들웨어 사용에 대한 설명.

    • 서버에서 숫자 유효성 검사 추가하기.

  1. 서버 아키텍처:

    • express에서의 서버 아키텍처.

    • express.Router를 사용하여 서버 라우팅 처리하기.

    • 서버에 컨트롤러 추가 및 구축하기.

    • 서버에 서비스 추가 및 구축하기.

  1. Express에서 미들웨어 사용하기:

    • Express에서 미들웨어 이해하기.

    • 컨트롤러에 미들웨어를 올바르게 삽입하기.

    • 미들웨어를 사용하여 검증 작성하기.

MongoDB

  1. MongoDB 소개:

    • 데이터베이스에 대한 소개.

    • 관계형 데이터베이스와 비관계형 데이터베이스의 차이점.

    • MongoDB 소개 및 일반적인 사용 사례.

    • express 서버를 MongoDB에 연결하기.

    • mongo GUI 사용 소개.

  1. 레코드 저장 및 검색:

    • 스키마 정의 및 일반적인 타입들에 대한 개요.

    • save 함수를 이용한 MongoDB에서 레코드 생성하기.

    • find 함수를 사용하여 MongoDB에서 레코드 검색하기.

    • $gte, $gt, $lte, $lt, 그리고 $eq와 같은 일반적인 필터 사용하기.

  1. MongoDB에서의 고급 쿼리:

    • ObjectId 식별자 이해하기.

    • toJSON 함수에 대한 설명.

    • MongoDB에서 findById 쿼리 사용하기.

    • findByIdAndUpdate를 사용한 레코드 업데이트.

    • inc$ 연산자 사용하기.

    • MongoDB에서 count 함수 사용하기.

    • MongoDB에서 스키마의 기본값 정의하기.

  1. 삭제 쿼리 및 기본 연산자:

    • findByIdAndDelete를 이용한 레코드 삭제.

    • push$ 연산자 사용하기.

    • 서버 실패 요청 처리하기 (500).

  1. MongoDB에서의 고급 집계:

    • 고급 파이프라인 구축 및 집계 사용하기.

    • MongoDB 쿼리에서 데이터 정렬하기.

    • sum, $max, $min, avg$와 같은 일반 연산자 사용하기.

  1. MongoDB에서 컬렉션 간의 고급 관계:

    • ref를 사용하여 컬렉션을 연결하는 설명.

    • MongoDB에서 populate 액션 사용하기.

    • MongoDB에서 id 생성에 대한 심층 설명.

서버 보안 및 인증

  1. JWT 소개:

    • 서버 보안에 대한 배경.

    • jsonwebtoken 패키지 소개.

    • 첫 번째 토큰 생성하기.

    • 토큰의 유효성을 확인하기 위해 verify 함수 사용하기.

  1. 보안 API 작성하기:

    • 서버에 보안 레이어 추가하기.

    • 서버 보안을 위한 Middleware 구축하기.

    • 우리가 작성하는 서버에서 JWT를 이용한 보안 구현하기.

  1. Crypto 라이브러리 사용하기:

    • 서버에서 암호화 사용에 대한 배경.

    • 비밀번호 해싱을 위한 해시 함수 설명.

    • 향상된 보안을 위한 스키마에 솔트 추가.

    • 가능한 공격에 대한 설명.

  1. 서버 간 통신:

    • 서버 통신을 위해 axios 라이브러리 사용하기.

    • 우리가 작성한 서버를 통해 다른 서버에서 데이터 가져오기.

    • 외부 서버에서 가져온 데이터를 MongoDB에 저장하기.

  1. 맺음말:

    • 강좌를 요약하는 마무리 말씀.