폴더 구조는 다음과 같다
src/index.ts -> src/api/index.ts -> src/api/blog.ts 순서로 실행된다
app.use('/api', require('./api'));
src/api/index.ts
router.use('/user', require('./user'));
router.use('/blog', require('./blog'));
const router : Router = express.Router();
router.get('/', (req: Request, res: Response) => {
res.send('<h2> 블로그 </h2>');
});
이렇게했을 경우 라우터가 많아지면 관리하기가 어렵다. 예를 들어서 /api/user로 get 요청이 들어왔을 때 user.ts 파일로 가는게 아니라 userList.ts 파일로 가게 만들고 싶다고 하면 api/index.ts 파일에서 해당 라우터를 찾아서 직접 바꾸어 줘야 한다 이는 매우 번거로운 작업이다(맞나...?)
따라서 다음과 같이 바꾸었다 일단 폴더 구성은 다음과 같다
api
index.ts
const apiRouter = require('./api')
app.use('/api', apiRouter);
src/api/index.ts
const userRouter = require('./user')
const blogRouter = require('./blog')
router.use('/user', userRouter);
router.use('/blog', blogRouter);
src/api/blog.ts -> src/api/routers/blog.ts 로 위치만 변경 내용은 동일함
이렇게 변경하는게 맞는진 모르겠으나..일단해봄
참고자료
https://devent.tistory.com/136
https://lgphone.tistory.com/76