총 10분 중 11분
2001
시즌 2개, 그리고 영화
시즌 2:
5화
“아일랜드”
출연: 이나영, 김민준, 김민정, 현빈
장르: 애초에 역경을 딛고 이룩하는 숭고한 사랑이란 없다. 그 역경 자체가 사랑이다.
프로그램 특징: 그 곳에서 살아남는 사랑이 어떤 모습으로 걸어오는지 기다려 보고 싶다.
장르: 애초에 역경을 딛고 이룩하는 숭고한 사랑이란 없다. 그 역경 자체가 사랑이다.
프로그램 특징: 그 곳에서 살아남는 사랑이 어떤 모습으로 걸어오는지 기다려 보고 싶다.
회차
KB_ITs_Your_Life_6th/Node.js
[Node][Express.js] HTTP transaction 미들웨어
728x90
반응형
*Node.js 프로그래밍 입문(고경희)를 읽고 작성한 글입니다. Express.js(노드 기반 백엔드 프레임워크)를 이용했습니다.
Response Request
따로 status를 설정하지 않으면 200을 기본값으로 사용한다. POST는 자료가 새로 만들어진 상태를 표현하기 위해 status 201을 이용한다.
미들웨어 Middleware
- router
- body-parser
req - res 중간에서 req을 처리하거나 원하는 형태로 res을 수정하는 것을 미들웨어라고 한다.
- req가 서버에 도착하기 전 작업
- parsing: req body에 포함된 값(아이디, 비번 등)을 앱에서 읽을 수 있는 형태로 변환한다.
- 아이디, 비밀번호 값으로 사용자 인증한다 + 폼 내용 검증
- 라우팅 처리: 특정 URL로 들어온 req를 읽기 쉽고 관리하기 쉽도록 모듈화
- 라우터를 사용해 경로마다 실행할 함수를 연결하면 유지보수가 편리해진다.
- res 처리: 서버에서 클라이언트로 응답을 보낼 때 자료를 적절한 형태로 변환하거나 오류 처리
- 처리 결과를 다음 단계로 넘겨준다 ; 렌더링하여 화면에 표시한다.
body-parser
서버로 요청 보낼 때 request body에 담긴 값을 parsing하는 미들웨어.
함수 | 설명 |
.json | |
.urlencoded | 인코딩 처리해서 req.body에 추가 |
.raw | |
.text |
미들웨어는 코드에서 순서가 중요하다. HTTP req, res 사이에서 요청, 응답을 처리하기 때문이다.
응답을 종료하지 않는 미들웨어는 next 함수를 추가해서 다음에 실행할 미드웨어와 연결해야 한다.
const logger = (req, res, next) => {
console.log('User logged');
next();
};
// 미들웨어 등록
app.use(logger);
app.get('/', (req, res) => {
res.status(200).send('Hello, Kyunghee');
});
라우트 코드보다 먼저 미들웨어를 등록하면 user logged 가 뜨지만
라우트 코드보다 미들웨어를 나중에 등록하면 미들웨어는 실행되지 않는다. 아래와 같은 경우에는 / 경로에는 미들웨어가 실행되지 않지만 /transactions 에서 get으로 요청하면 미들웨어가 실행되어 user logged가 실행된다.
app.get('/', (req, res) => {
res.status(200).send('Hello, Kyunghee');
});
// 미들웨어 등록
app.use(logger);
app.use('/transactions', require('./routes/transactionRoutes'));
728x90
'KB_ITs_Your_Life_6th > Node.js' 카테고리의 다른 글
[Node.js] 비밀번호 암호화하기 - bcypt 모듈 (0) | 2025.05.30 |
---|---|
비동기데이터 처리를 위한 폼 태그 API 이해 (1) | 2025.05.03 |
[Node.js][MongoDB] MVC 모델의 Controller 작성하기 (0) | 2025.04.21 |
MVC 모델에서 모델[MongoDB]과 컨트롤러 연결하기 (0) | 2025.04.21 |
[Node.js] 비동기처리 동작을 이해해보자 (1) | 2025.03.25 |
2025:05:15
KB_ITs_Your_Life_6th/Node.js
[Node][Express.js] HTTP transaction 미들웨어