Express 기본 라우팅: GET과 POST 요청 처리하는 방법

Express 기본 라우팅: GET과 POST 요청 처리하는 방법

Express.js에서의 라우팅은 웹 애플리케이션에서 요청을 처리하는 방식을 정의하는 중요한 개념입니다. 이 글에서는 Express를 사용하여 GET과 POST 요청을 처리하는 기본적인 방법에 대해 알아보겠습니다.

GET 요청 처리

GET 요청은 서버에서 데이터를 조회할 때 사용되는 메소드입니다. 예를 들어, 클라이언트가 웹 페이지를 요청할 때 주로 GET 요청을 사용합니다.

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

// 루트 경로('/')에 대한 GET 요청을 처리합니다.
app.get('/', (req, res) => {
  // 클라이언트에게 응답을 전송합니다.
  res.send('GET 요청에 대한 응답입니다.');
});

// '/user' 경로에 대한 GET 요청을 처리합니다.
app.get('/user', (req, res) => {
  // 클라이언트에게 'User profile' 페이지를 응답으로 전송합니다.
  res.send('User profile');
});

const port = 3000;
// 서버를 특정 포트에서 실행하고, 서버가 시작되면 콘솔에 메시지를 출력합니다.
app.listen(port, () => {
  console.log(`서버가 http://localhost:${port} 에서 실행중입니다.`);
});

위 코드는 Express를 사용하여 기본 웹 서버를 설정하고, 두 개의 경로(‘/’)와 (‘/user’)에 대한 GET 요청을 처리하는 방법을 보여줍니다. 각 경로에 대해 서버는 클라이언트에게 간단한 문자열 응답을 보냅니다. 이러한 구조를 통해 웹 애플리케이션의 기본 라우팅을 구성할 수 있습니다.

Express GET 요청 예제 실행 화면

POST 요청 처리

POST 요청은 서버로 데이터를 전송할 때 사용되는 메소드입니다. 예를 들어, 폼(form) 데이터를 서버로 전송할 때 주로 POST 요청을 사용합니다.

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

// 'public' 폴더 안의 파일들을 정적 파일로 제공하기 위한 설정입니다.
app.use(express.static('public'));

// express 내장 메소드를 사용하여 URL 인코딩된 데이터를 파싱합니다.
app.use(express.urlencoded({ extended: true }));

// '/submit' 경로에 대한 POST 요청을 처리합니다.
app.post('/submit', (req, res) => {
  // 요청 본문에서 'username' 필드의 값을 추출합니다.
  const username = req.body.username;
  // 추출한 값으로 응답을 구성하여 클라이언트에게 전송합니다.
  res.send(`POST 요청을 통해 전송된 이름: ${username}`);
});

app.listen(port, () => {
  console.log(`서버가 http://localhost:${port} 에서 실행중입니다.`);
});

위 예제 코드는 ‘/submit’ 경로에 대한 POST 요청을 처리하고, 요청 본문(body)에서 ‘username’을 추출하여 응답합니다.

Express POST 요청 예제 실행 화면

Express에서 GET과 POST 요청을 처리하는 방법은 매우 간단하며, 이를 통해 다양한 웹 애플리케이션의 기능을 구현할 수 있습니다.

더 자세한 내용을 원하시면, Express 공식 문서의 라우팅 섹션을 참조하세요.

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤