프로그래밍

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의 이벤트 기반 비동기 구조를 잘 활용하면서도, 직관적인 코드 구성과 라우팅 시스템 덕분에 초보자부터 전문가까지 모두에게 유용한 도구입니다.