오늘은 Node.js 기반 웹 서버 프레임워크인 Express를 활용하여 항공편 예약 시스템을 만들면서 배운 개념과 문법들을 정리해보겠습니다.
1. Express란?
Express는 Node.js 환경에서 HTTP 요청을 쉽게 처리할 수 있도록 도와주는 웹 서버 프레임워크입니다.
- 라우팅
- 미들웨어
- 요청/응답 처리
- REST API 만들기
등을 구현할 수 있습니다.
2. 기본 구조 이해: Controller, Router, Repository
- Controller: 요청(req)을 처리하고 응답(res)을 반환하는 로직 담당
- Router: 어떤 URL로 어떤 함수를 실행할지 연결하는 부분
- Repository: 실제 데이터 저장소 (배열, DB 등)
3. 라우터(Router) 문법 정리
- router.get(path, handler): GET 요청 처리
- router.post(...): POST 요청 처리
- router.put(...): PUT 요청 처리
- router.delete(...): DELETE 요청 처리
4. 컨트롤러(Controller) 문법 정리

문법 설명
- req.params: URL 경로 변수 (/flight/:id)
- req.query: URL 쿼리 파라미터 (/flight?departure=ICN)
- req.body: POST, PUT에서 body로 들어온 데이터
- res.status(n).json(obj): 응답 코드와 함께 JSON 객체를 반환
5. 배열 메서드 활용
find vs filter
| find() | 하나만 찾음 | 예약자 전화번호로 1명 찾기 |
| filter() | 모두 찾음 | 특정 항공편을 예약한 사람들 찾기 |
6. 구조 분해 + 나머지 연산자 (...)
const { book_id, ...response } = result;
- book_id를 제외한 나머지 속성으로 새 객체(response)를 만듦
- 민감 정보 제거할 때 유용
7. POST 요청에서 데이터 추가하기

- Date.now()로 고유한 ID 생성
- res.setHeader('Location', ...): RESTful 응답에 적합
'공부 내용 정리' 카테고리의 다른 글
| Cookie, Session, JWT로 만드는 웹 인증 (0) | 2025.07.25 |
|---|---|
| OpenZeppelin이란? (3) | 2025.07.25 |
| Express.js로 만들어진서버-클라이언트 (0) | 2025.07.23 |
| 채굴 가능한 코인 추천 & 채굴 방법 (0) | 2025.07.23 |
| NFT 마켓플레이스 구축 (1) | 2025.07.22 |