2023. 9. 11. 01:16ㆍ카테고리 없음
"app.use"는 Node.js 및 Express.js와 같은 웹 애플리케이션 프레임워크에서 미들웨어를 등록하고 사용하는 메서드입니다. 여러 개의 "app.use" 문을 사용하는 것은 Express.js 애플리케이션에서 미들웨어를 연결하는 방법 중 하나입니다. 각 "app.use" 문은 요청(req), 응답(res), 그리고 다음 미들웨어로 이어지는 함수인 "next"를 사용하여 요청 처리 및 미들웨어 체인을 조작합니다.
1. `req` (request): 클라이언트로부터 들어온 HTTP 요청에 관한 정보를 포함하는 객체입니다. 이 객체는 요청 헤더, 본문, 파라미터, 세션 및 기타 요청 데이터를 포함합니다.
2. `res` (response): 서버에서 클라이언트로 보내는 HTTP 응답에 관한 정보를 포함하는 객체입니다. 이 객체를 사용하여 응답 헤더, 본문, 상태 코드 등을 설정하여 클라이언트에게 응답을 보냅니다.
3. `next`: 미들웨어 함수에서 다음 미들웨어로 제어를 넘기는 역할을 하는 함수입니다. "next"를 호출하면 Express.js는 다음 미들웨어 함수를 실행합니다. 만약 "next" 함수를 호출하지 않는다면, 현재 미들웨어에서 요청 처리가 중단됩니다.
예를 들어, 다음과 같이 여러 개의 미들웨어를 사용하는 Express.js 애플리케이션을 만들 수 있습니다:
const express = require('express');
const app = express();
// 첫 번째 미들웨어
app.use((req, res, next) => {
console.log('첫 번째 미들웨어');
next(); // 다음 미들웨어로 제어를 넘김
});
// 두 번째 미들웨어
app.use((req, res, next) => {
console.log('두 번째 미들웨어');
res.send('Hello, World!'); // 클라이언트에 응답 보냄
});
app.listen(3000, () => {
console.log('서버가 3000 포트에서 실행 중입니다.');
});
이 예제에서 첫 번째 미들웨어는 "req"와 "next"를 사용하여 로그를 출력하고 다음 미들웨어로 제어를 넘깁니다. 두 번째 미들웨어는 "res"를 사용하여 클라이언트에게 "Hello, World!"를 응답으로 보냅니다.