이 강좌에서 다룰 주제는 무엇입니까?
Node.js 소개
서문 및 강좌 개요:
서문입니다.
강좌에서 다룰 내용과 Node.js에 대한 소개입니다.
코드 저장소 작업에 대한 강조입니다.
기본 서버 작성하기:
간단한 첫 번째 서버 구축하기.
서버가 무엇인지 설명하고 HTTP 요청 및 응답 처리하기.
상태 코드 이해 및 JSON 대 HTML 반환하기.
요청의 기본 처리:
API 서버 엔드포인트 소개.
요청을 처리하기 위한 다중 라우트 정의.
서버 요청의 고급 처리:
HTTP 요청 구조 이해하기.
상태 코드 설명 및 서버 동작.
Restful API 작성 준비:
Restful API 소개.
QueryString 및 요청 매개변수 이해하기.
파일 시스템 작업
Node.js에서 파일 읽기:
파일 시스템 모듈(fs) 작업하기.
readFile 함수를 비동기적으로 사용하기.
readFileSync 함수를 동기적으로 사용하기.
fs와 path 모듈 소개.
여러 엔드포인트가 있는 서버 생성하기.
텍스트와 JSON 파일 저장하기.
Node.js에서 파일 저장하기:
writeFile 함수를 비동기적으로 사용하여 파일 쓰기.
writeFileSync 함수를 동기적으로 사용하여 파일 쓰기.
서버에서의 오류 처리하기.
Node.js에서 파일 삭제하기:
unlinkSync를 사용하여 파일 삭제하기.
파일 시스템에서 디렉토리 사용하기.
파일 시스템에 파일이 존재하는지 확인하는 함수.
POST 요청 처리하기:
기본 서버 아키텍처.
post 요청 처리.
Postman을 사용하여 get 및 post 요청 생성.
서버에서 검증 사용하기:
의미 있는 서버 작성하기.
서버에서 검증 및 오류 사용하기.
여러 요청을 처리하는 서버 생성하기 (운영 체제에서 파일 읽기, 쓰기, 삭제하기).
Express를 사용한 서버 작성
Express 사용 소개:
express 라이브러리에 대한 배경.
서버를 작성하기 위해 express 라이브러리 사용하기.
send, sendStatus, 그리고 json 함수 사용하기.
get 요청 처리하기.
쿼리스트링 및 파라미터 처리하기:
express와 함께 req.query 사용하기.
express와 함께 req.params 사용하기.
파일 시스템을 사용하여 관리자 데이터 서버 작성하기.
서버에서 POST 요청 처리하기:
express를 사용하여 post 요청 처리하기.
미들웨어 사용에 대한 설명.
서버에서 숫자 유효성 검사 추가하기.
서버 아키텍처:
express에서의 서버 아키텍처.
express.Router를 사용하여 서버 라우팅 처리하기.
서버에 컨트롤러 추가 및 구축하기.
서버에 서비스 추가 및 구축하기.
Express에서 미들웨어 사용하기:
Express에서 미들웨어 이해하기.
컨트롤러에 미들웨어를 올바르게 삽입하기.
미들웨어를 사용하여 검증 작성하기.
MongoDB
MongoDB 소개:
데이터베이스에 대한 소개.
관계형 데이터베이스와 비관계형 데이터베이스의 차이점.
MongoDB 소개 및 일반적인 사용 사례.
express 서버를 MongoDB에 연결하기.
mongo GUI 사용 소개.
레코드 저장 및 검색:
스키마 정의 및 일반적인 타입들에 대한 개요.
save 함수를 이용한 MongoDB에서 레코드 생성하기.
find 함수를 사용하여 MongoDB에서 레코드 검색하기.
$gte, $gt, $lte, $lt, 그리고 $eq와 같은 일반적인 필터 사용하기.
MongoDB에서의 고급 쿼리:
ObjectId 식별자 이해하기.
toJSON 함수에 대한 설명.
MongoDB에서 findById 쿼리 사용하기.
findByIdAndUpdate를 사용한 레코드 업데이트.
inc$ 연산자 사용하기.
MongoDB에서 count 함수 사용하기.
MongoDB에서 스키마의 기본값 정의하기.
삭제 쿼리 및 기본 연산자:
findByIdAndDelete를 이용한 레코드 삭제.
push$ 연산자 사용하기.
서버 실패 요청 처리하기 (500).
MongoDB에서의 고급 집계:
고급 파이프라인 구축 및 집계 사용하기.
MongoDB 쿼리에서 데이터 정렬하기.
sum, $max, $min, avg$와 같은 일반 연산자 사용하기.
MongoDB에서 컬렉션 간의 고급 관계:
ref를 사용하여 컬렉션을 연결하는 설명.
MongoDB에서 populate 액션 사용하기.
MongoDB에서 id 생성에 대한 심층 설명.
서버 보안 및 인증
JWT 소개:
서버 보안에 대한 배경.
jsonwebtoken 패키지 소개.
첫 번째 토큰 생성하기.
토큰의 유효성을 확인하기 위해 verify 함수 사용하기.
보안 API 작성하기:
서버에 보안 레이어 추가하기.
서버 보안을 위한 Middleware 구축하기.
우리가 작성하는 서버에서 JWT를 이용한 보안 구현하기.
Crypto 라이브러리 사용하기:
서버에서 암호화 사용에 대한 배경.
비밀번호 해싱을 위한 해시 함수 설명.
향상된 보안을 위한 스키마에 솔트 추가.
가능한 공격에 대한 설명.
서버 간 통신:
서버 통신을 위해 axios 라이브러리 사용하기.
우리가 작성한 서버를 통해 다른 서버에서 데이터 가져오기.
외부 서버에서 가져온 데이터를 MongoDB에 저장하기.
맺음말:
강좌를 요약하는 마무리 말씀.