[nodejs] REST API를 위한 동적 라우팅 처리

Node.js와 Express를 사용하여 RESTful API를 구축하는 경우, 동적 라우팅 처리는 매우 중요합니다. 동적 라우팅을 사용하면 URL의 일부를 매개변수로 전달하여 요청을 보다 유연하게 처리할 수 있습니다.

이 블로그 포스트에서는 Node.js 및 Express를 사용하여 REST API를 구축하는 과정에서 동적 라우팅 처리에 대해 자세히 알아보겠습니다.

1. Express 앱 설정

먼저, Express 앱을 설정해야 합니다. 아래는 기본적인 Express 앱의 설정 코드입니다.

const express = require('express');
const app = express();
const port = 3000;

app.use(express.json());

2. 동적 라우트 정의

다음으로, 동적 라우트를 정의해야 합니다. 동적 라우트는 URL의 특정 부분을 매개변수로 사용하여 요청을 처리합니다. 예를 들어, “/users/:userId”와 같은 형식으로 동적 라우트를 정의할 수 있습니다.

app.get('/users/:userId', (req, res) => {
  const userId = req.params.userId;
  // userId를 이용한 로직 처리
  res.send('User ID: ' + userId);
});

위의 코드에서 “:userId” 부분은 사용자가 요청한 실제 값으로 대체됩니다. 이를 통해 특정 사용자의 데이터를 가져오거나 처리할 수 있습니다.

3. 요청 처리

정의된 동적 라우트에 따라 요청이 들어오면 해당 라우트의 콜백 함수가 실행됩니다. 이때, 매개변수로 전달된 값은 req.params 객체를 통해 접근할 수 있습니다.

app.get('/users/:userId', (req, res) => {
  const userId = req.params.userId;
  // userId를 이용한 데이터베이스 조회 등의 로직 처리
  res.send('User ID: ' + userId);
});

위의 코드에서 req.params.userId를 통해 URL에서 전달된 사용자 ID에 접근할 수 있습니다.

마무리

이제 Express를 사용하여 RESTful API에 동적 라우팅을 적용하는 방법을 알아보았습니다. 동적 라우팅을 통해 REST API를 보다 유연하게 구축할 수 있으며, 클라이언트의 요청에 따라 동적으로 데이터를 처리할 수 있습니다.

Express의 동적 라우팅 기능을 활용하여 RESTful API를 설계하면, 심플하면서도 강력한 API를 만들 수 있습니다.

참고 문헌: