웹을 요구사항에 맞춰 개발을 하다보면 기능에 따라 필요한 url 경로개수가 많아지고, 그것에 따라 코드에 내용 또한 많아져 복잡해지기 비일비재합니다.
따라서 복잡한 코드를 효율적으로 관리할 수 있는 방법을 제안하며, 코드는 babel기반으로 작성되어 있습니다.
패키지 구조
패키지 구조로는 routes 폴더를 생성 후 admin, api, user와 같이 비슷한 기능들을 담당하는 url을 따로 구성합니다.
userRouter.js
import express from "express";
const userRouter = express.Router();
userRouter.get("/usermain", function (req, res) {
res.send('Hello usermain')
});
export default userRouter;
userRouter는 유저에 관련된 url을 정리하고 예시에 나와있는 경로는 localhost:3000/user/usermain 을 통해 접속이 가능합니다.
server.js
import userRouter from "./routes/userRouter";
import apiRouter from "./routes/apiRouter";
import adminRouter from "./routes/adminRouter";
const express = require('express') // express 프레임워크 호출
const app = express()
app.use("/user", userRouter);
app.use("/api", apiRouter);
app.use("/admin", adminRouter);
app.listen(3000) // PORT는 3000번을 기준으로 함.
실행 초기 main위치와 같은 부분인 server.js는 routes폴더의 url 정보와 express 프레임워크기반 서버를 준비합니다.
브라우저 결과창