프로그래밍
Express.js란 ?
에그티비
2025. 4. 7. 20:57
Express.js는 Node.js 환경에서 작동하는 웹 애플리케이션 프레임워크입니다.
빠르고 간결하며 유연한 구조를 제공하여, 서버 사이드 애플리케이션을 효율적으로 개발할 수 있게 도와줍니다.
특히 RESTful API나 웹사이트의 백엔드 서버를 만드는 데 많이 사용됩니다.
주요 특징
1. 간결한 라우팅 시스템
Express는 URL 경로와 HTTP 메서드(GET, POST, PUT 등)에 따라 요청을 처리하는 라우터 기능을 제공합니다.
app.get('/hello', (req, res) => {
res.send('Hello, world!');
});
2. 미들웨어(Middleware) 구조
요청과 응답 사이에 기능을 삽입하는 방식으로, 로그인 인증, 로깅, 데이터 파싱, 에러 처리 등을 쉽게 추가할 수 있습니다.
app.use(express.json()); // JSON 파싱 미들웨어
3. 템플릿 엔진 지원
Pug
, EJS
, Handlebars
같은 템플릿 엔진을 사용해서 HTML을 동적으로 생성할 수 있습니다.
4. 정적 파일 제공
CSS, JS, 이미지와 같은 정적 파일을 쉽게 제공할 수 있습니다.
app.use(express.static('public'));
5. 모듈화와 유연성
라우터나 컨트롤러를 모듈화하여 유지보수가 쉽고, 다양한 라이브러리와의 결합도 뛰어납니다.
Express.js 기본 구성 예시
const express = require('express');
const app = express();
const port = 3000;
app.use(express.json());
app.get('/', (req, res) => {
res.send('홈 페이지');
});
app.post('/user', (req, res) => {
const user = req.body;
res.send(`사용자 생성됨: ${user.name}`);
});
app.listen(port, () => {
console.log(`${port}번 포트에서 서버 실행 중`);
});
Express.js의 활용 예시
- 간단한 블로그 백엔드 API 서버
- 전자상거래 사이트 서버
- 모바일 앱용 RESTful API
- 사내 관리 시스템 백엔드
결론
Express.js는 복잡한 설정 없이 빠르게 웹 서버를 만들 수 있는 효율적인 프레임워크입니다. Node.js의 이벤트 기반 비동기 구조를 잘 활용하면서도, 직관적인 코드 구성과 라우팅 시스템 덕분에 초보자부터 전문가까지 모두에게 유용한 도구입니다.