Routing in Express.js: 사용자 요청 처리

에서 는 Express.js 애플리케이션 routing 이 사용자로부터 들어오는 HTTP 요청을 처리하는 방법을 정의할 수 있게 해주는 중요한 개념입니다. 경로를 사용하면 사용자가 애플리케이션의 특정 URL에 요청을 보낼 때 특정 작업을 지정할 수 있습니다.

1단계: 기본 만들기 Route

route in 을 생성하려면 애플리케이션 객체()의 메서드를 Express.js 사용하여 특정 HTTP 메서드 METHOD 및 경로 PATH에 대한 를 등록합니다. HANDLER는 요청이 도달했을 때 호출되는 핸들러 함수입니다. app.METHOD(PATH, HANDLER) app route route

예를 들어 에 대한 요청을 route 처리하는 를 생성하려면 다음 코드를 사용할 수 있습니다. GET /hello

app.get('/hello',(req, res) => {  
  res.send('Hello, this is the /hello route!');  
});  

2단계: 요청 및 응답 처리

핸들러 기능에서는 req(요청) 및 res(응답) 객체를 사용하여 사용자로부터 들어오는 요청을 처리하고 응답할 수 있습니다. 개체 req 에는 URL 매개 변수, 보낸 데이터, 보낸 사람의 IP 주소 등과 같은 들어오는 요청에 대한 정보가 포함되어 있습니다. 개체에는, , 등과 res 같은 요청에 응답하는 메서드가 포함되어 있습니다. res.send() res.json() res.render()

3단계: 여러 경로 처리

Express.js 서로 다른 HTTP 메서드를 사용하여 동일한 URL에 대해 여러 경로를 정의할 수 있습니다. 예를 들어:

app.get('/hello',(req, res) => {  
  res.send('Hello, this is the GET /hello route!');  
});  
  
app.post('/hello',(req, res) => {  
  res.send('Hello, this is the POST /hello route!');  
});  

4단계: 동적 매개변수 처리

콜론( :)으로 정의된 동적 매개변수를 포함하는 경로를 정의할 수도 있습니다. 예를 들어:

app.get('/users/:id',(req, res) => {  
  const userId = req.params.id;  
  res.send(`Hello, this is the GET /users/${userId} route!`);  
});  

사용자가 에 요청하면 /users/123 변수 userId 값이 "123"이 됩니다.

5단계: Routing 모듈로 분리

더 큰 프로젝트에서는 경로를 별도의 파일로 분리하여 소스 코드를 체계적으로 관리하고 관리할 수 있도록 할 수 있습니다. 를 사용하여 module.exports 별도의 파일에서 경로를 정의한 다음 기본 파일로 가져올 수 있습니다. 예를 들어:

// routes/users.js  
const express = require('express');  
const router = express.Router();  
  
router.get('/profile',(req, res) => {  
  res.send('This is the /profile route in users.js!');  
});  
  
module.exports = router;  
// app.js  
const usersRouter = require('./routes/users');  
app.use('/users', usersRouter);  

6단계: 존재하지 않는 경로 처리

마지막으로, 사용자가 존재하지 않는 것을 요청하면 이를 처리하기 위해 route 404를 정의할 수 있습니다 route. route 기본 파일 끝에 기본값을 설정하면 됩니다 .

app.use((req, res, next) => {  
  res.status(404).send('Route not found!');  
});  

에서 경로를 만들고 처리하는 방법을 배웠습니다 Express.js. 이 기능을 사용하면 사용자 요청을 유연하고 강력하게 사용자 지정하고 처리하여 응용 프로그램의 적응성과 확장성을 높일 수 있습니다. 풍부하고 환상적인 웹 애플리케이션을 구축하기 위해 경로를 계속 탐색하고 활용하십시오!