|
| 1 | +--- |
| 2 | +title: 'Express의 기본 라우팅' |
| 3 | +category: 'Develop' |
| 4 | +date: '2025-12-01' |
| 5 | +description: 'Express 프레임워크를 사용하여 기본적인 라우팅을 설정하는 방법을 알아보자!' |
| 6 | +thumbnail: '/thumbnail/express-routes.webp' |
| 7 | +--- |
| 8 | + |
| 9 | +# 기본 라우팅 |
| 10 | + |
| 11 | +## 라우팅 |
| 12 | + |
| 13 | +**라우팅** 은 **URI(또는 경로)** 및 **특정한 HTTP 요청 메소드**(GET, POST 등)인 **특정 엔드포인트에 대한 클라이언트 요청에 애플리케이션이 응답**하는 방법을 결정하는 것을 말한다. |
| 14 | + |
| 15 | +각 라우트는 하나 이상의 핸들러 함수를 가질 수 있으며, 이러한 함수는 라우트가 일치할 때 실행된다. |
| 16 | + |
| 17 | +라우트 정의에는 다음과 같은 구조가 필요하다. |
| 18 | + |
| 19 | +```javascript |
| 20 | +app.METHOD(PATH, HANDLER); |
| 21 | +``` |
| 22 | + |
| 23 | +- `app`은 express의 인스턴스 |
| 24 | +- `METHOD`는 HTTP 요청 메소드 (GET, POST, PUT, DELETE 등) |
| 25 | +- `PATH`는 서버에서의 경로 |
| 26 | +- `HANDLER`는 라우트가 일치할 때 실행되는 함수 |
| 27 | + |
| 28 | +## 예시 |
| 29 | + |
| 30 | +### 1. 홈 페이지에서 Hello World!로 응답 |
| 31 | + |
| 32 | +```javascript |
| 33 | +app.get('/', (req, res) => { |
| 34 | + res.send('Hello World!'); |
| 35 | +}); |
| 36 | +``` |
| 37 | + |
| 38 | +### 2. 루트 경로 (`/`)에 대한 POST 요청에 응답 |
| 39 | + |
| 40 | +```javascript |
| 41 | +app.post('/', (req, res) => { |
| 42 | + res.send('Got a POST request'); |
| 43 | +}); |
| 44 | +``` |
| 45 | + |
| 46 | +### 3. `/user` 라우트에 대한 PUT 요청에 응답 |
| 47 | + |
| 48 | +```javascript |
| 49 | +app.put('/user', (req, res) => { |
| 50 | + res.send('Got a PUT request at /user'); |
| 51 | +}); |
| 52 | +``` |
| 53 | + |
| 54 | +### 4. `/user` 라우트에 대한 DELETE 요청에 응답 |
| 55 | + |
| 56 | +```javascript |
| 57 | +app.delete('/user', (req, res) => { |
| 58 | + res.send('Got a DELETE request at /user'); |
| 59 | +}); |
| 60 | +``` |
0 commit comments