- 계층 구조의 라우터를 사용 할 때 사용
- 하위 라우터(혹은 자식 라우터)가 상위 라우터(부모 라우터)의 req.params 값을 유지하는 것
- 라우터로 별개의 파일에서 라우팅을 하는데, 상위 라우터의 파라미터가 필요한 경우에 사용함
ex) 포스트와 댓글 달기 / 여러개의 카테고리와 그 카테고리에 속한 게시글 등등
https://expressjs.com/ko/api.html 에서는 이렇게 설명 하고 있다.
1) 선언하기
child router 파일에 선언
const router = express.Router({ mergeParams: true });
2) 사용하기(게시글과 그 게시글에 속한 댓글을 만들 경우)
/*post.js 라우터(parent) */
const commentroute = require('.comments');
//comment url에 post의 idx값을 유지 하도록 설정
router.use('/:idx/comment', commentroute);
▲ 게시글(post.js)
/*comment.js 라우터(child)*/
router.get('/', (req, res) => {
let idx = parseInt(req.params.idx);
console.log(idx);
});
▲ 해당 게시글의 댓글 (comment.js)
3) 포스트맨으로 테스트
결과 : 터미널에서 '3'이 출력된다.
'코딩 > expressJs' 카테고리의 다른 글
JWT 사용 정리 (0) | 2022.05.03 |
---|---|
express) Cookie와 Session쓰기 (0) | 2022.04.16 |
Sequelize를 적용해보자(진행중) (0) | 2022.04.04 |
Nginx에서 reverse proxy 설정중 문제(해결중) (0) | 2022.03.20 |
nodejs express 로 아~주 기본적인 라우팅 설정 해보기(with Mysql) (0) | 2021.12.23 |