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 요청을 처리하는 방법을 보여줍니다. 각 경로에 대해 서버는 클라이언트에게 간단한 문자열 응답을 보냅니다. 이러한 구조를 통해 웹 애플리케이션의 기본 라우팅을 구성할 수 있습니다.
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에서 GET과 POST 요청을 처리하는 방법은 매우 간단하며, 이를 통해 다양한 웹 애플리케이션의 기능을 구현할 수 있습니다.
더 자세한 내용을 원하시면, Express 공식 문서의 라우팅 섹션을 참조하세요.
관련 이전 게시글
- Node.js 소개 및 윈도우에 설치하는 방법
- Node.js 서버 생성 및 실행하는 방법
- Node.js 패키지 관리자 NPM 사용법과 package.json 파일 역할
- Express.js 소개 및 윈도우에서의 노드 기반 설치 방법
- Node.js 기반에서 Express를 활용한 기본 웹 서버 구축하는 방법
이 글이 도움이 되셨다면 공유 부탁 드립니다.