"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Express.js 필수사항

Express.js 필수사항

2024-11-07에 게시됨
검색:463

Express.js Essentials

이 글은 Node.js로 백엔드 애플리케이션을 구축하는 핵심 부분인 Express.js를 알아야 할 필수 사항에 중점을 둡니다. 강력한 웹 애플리케이션을 구축하는 데 중요한 역할을 하는 라우팅, CRUD 작업, 응답 방법 및 미들웨어 기능에 대해 자세히 살펴보겠습니다.

컨셉 하이라이트:

  1. 라우팅 방법 및 CRUD
  2. 라우팅 매개변수
  3. 경로 처리기
  4. 응답 방법
  5. 내장 미들웨어 기능

1. 라우팅 방법과 CRUD

Express.js에서 경로 메서드는 애플리케이션이 특정 경로에 대한 다양한 HTTP 요청(예: GET, POST, PUT, DELETE)에 응답하는 방법을 정의합니다. 이러한 메서드는 애플리케이션에서 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 구현하는 데 사용됩니다.

기본 CRUD 예: 이 예에서 각 경로는 사용된 HTTP 메서드를 기반으로 서로 다른 CRUD 작업에 응답합니다.

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

// Create - POST
app.post('/users', (req, res) => {
  res.send('User created');
}); 

// Read - GET
app.get('/users', (req, res) => {
  res.send('Here is the user'); 
}); 

// Update - PUT
app.put('/users/:id', (req, res) => {
  res.send('User with ID ${req.params.id} updated'); 
});

// Delete - DELETE
app.delete('/users//:id', (req, res) => {
  res.send('User with ID ${req.params.id} deleted');
}):

app.listen(3000, () => 
  console.log('Server running on port 3000')
);

2. 라우팅 매개변수

라우팅 매개변수를 사용하면 요청 URL의 특정 부분을 캡처하여 경로 핸들러 내에서 사용할 수 있습니다. 예를 들어, URL에서 ID를 추출하고 이를 사용하여 해당 ID와 관련된 작업을 수행할 수 있습니다.

예) 이 예에서 :id는 동적 매개변수로 추출되어 응답에 사용됩니다. 이 동적 매개변수가 123인 경우 /users/123에 대한 요청은 "ID가 123인 사용자를 가져오는 중"을 반환합니다.

app.get('/users/:id', (req, res) => {
  const userId = req.params.id; 
  res.send(`Fetching user with ID: ${userId}`);
});

3. 경로 처리기

경로 핸들러는 서버가 HTTP 요청을 처리하는 방법을 정의합니다. 단일 경로 내에서 여러 미들웨어 기능을 정의하여 더욱 깔끔하고 모듈화된 코드를 만들 수 있습니다.

다중 핸들러가 있는 예: 이 예에서 첫 번째 미들웨어는 메시지를 기록하고 두 번째 미들웨어는 응답을 보냅니다.

app.get('/users', (req, res, next) => {
  console.log('First middleware');
  next(); // call the next handler in the stack
}, (req, res) => {
  res.send('User list'); 
});

4. 대응방법

Express.js는 클라이언트에 응답을 보내는 여러 가지 방법을 제공합니다. 일반적으로 사용되는 응답 방법을 살펴보겠습니다.

a) .json()이 JSON 응답을 보냅니다.

app.get('/data', (req, res) => {
  res.json({ message: 'Hello, JSON' });
});

b) .send()는 다양한 유형(텍스트, HTML, 버퍼 등)의 응답을 보냅니다.

app.get('/text', (req, res) => {
  res.send('Sending text');
});

c) .download()는 파일을 첨부 파일로 보내 사용자에게 다운로드하라는 메시지를 표시합니다.


app.get('/download', (re




릴리스 선언문 이 글은 https://dev.to/ryoichihomma/expressjs-essentials-5e83?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3