Express와 Middleware를 배웠다. Express는 node.js의 프레임워크라 한다.
node.js
- 쓰레드 기반 동기방식(Blocking I/O)
- 개발자가 모든 종류의 서버 사이드 도구들과 어플리케이션을 자바스크립트로 만들수 있도록 해주는 런타임 환경
- 백엔드에서도 자바스크립트를 쓸 수 있도록 고안한 언어
- NPM: Node Package Manager
express
- node.js위에서 동작하는 웹 프레임워크
- node.js 개발 시 개발을 빠르고 손쉽게 할수록 도와주는 역할을 함 (미들웨어 사용) 자바스크립트 코드로 작성된 다양한 기능의 미들웨어는 개발자가 필요한 것만 선택하여 express와 결합해 사용할 수 있음
미들웨어
- 클라이언트에게 받은 요청에 응답하려는 중간(미들)에 목적에 맞게 처리를 하는, 거쳐가는 함수들
- req(요청)객체, res(응답)객체, 어플리케이션 요청과 응답을 하는중 그 다음의 미들웨어 함수에 대한 엑세스 권한을 갖는 함수
- 다음 미들웨어 함수에 대한 엑세스는 next함수를 이용해서 다음 미들웨어로 현재 요청을 넘길 수 있음
- next를 통해 미들웨어는 순차적으로 처리됨
- 요청을 처리하기 전에 중간에 무언갈 해주는 애
미들웨어를 사용하는 상황
- 모든 요청에 대해 url이나 메소드를 확인할 때
- POST 요청 등에 포함된 body(payload)를 구조화할 때(쉽게 얻어내고자 할 때)
- 모든 요청/응답에 CORS 헤더를 붙여야 할 때
- 요청 헤더에 사용자 인증 정보가 담겨있는지 확인할 때
Today's Key🔑
- Node.js는 확장성 있는 네트워크 애플리케이션 개발에 사용되는 소프트웨어 플랫폼이다.
- 순수 함수란, 오직 함수의 입력만이 함수의 결과에 영향을 주는 함수를 의미한다.
- Middleware란 이름처럼 요청에 대한 응답 과정 중간에 껴서 어떠한 동작을 해주는 프로그램이다.