728x90
익스프레스에서는 라우터를 분리할 수 있는 방법을 제공한다.
routes 폴더를 만들고 index.js와 user.js 파일 생성하기
index.js
const express = require('express');
const router = express.Router();
//GET / 라우터
router.get('/', (req, res) => {
res.send('Hello, Express');
});
module.exports = router;
user.js
const express = require('express');
const router = express.Router();
//GET / 라우터
router.get('/', (req, res) => {
res.send('Hello, User');
});
module.exports = router;
이제 app.use를 통해 app.js에 연결한다.
또한 에러 처리 미들웨어 위에 404 상태 코드를 응답하는 미들웨어를 하나 추가한다.
app.js
const indexRouter = require('/routes');
const userRouter = require('./reutes/user')
app.use('/', indexRouter);
app.use('/user', userRouter);
app.use((req,res,nex) => {
res.status(404).send('Not Found');
})
indexRouter를 ./routes 로 require할 수 있는 이유는 Index.js 는 생략할 수 있다.
indexRouter 는 use의 '/' 와 get의 '/' 가 합쳐져 GET / 라우터가 되었고,
userRouter 는 use의 '/user'와 get 의 '/'가 합쳐져 GET /user 라우터가 되었다.
이렇게 app.use 로 연결할 때 주소가 합쳐진다.
728x90
'NodeJS' 카테고리의 다른 글
[NodeJS] 익스프레스 req, res 객체 (0) | 2023.07.01 |
---|---|
[NodeJS] multer 파일업로드 (1) | 2023.07.01 |
[NodeJS] 실무에서 자주 사용하는 패키지 (0) | 2023.07.01 |
[NodeJS] 익스프레스 자주 사용하는 미들웨어 (0) | 2023.07.01 |
[NodeJS] 익스프레스 웹 서버 만들기 (0) | 2023.07.01 |