Home [Express] Router 만들어보기
Post
Cancel

[Express] Router 만들어보기

Express Router 만들기

Router is beginning of url.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// server.js

const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);

const userRouter = express.Router();
const handleEditUser = (req, res) => res.send("Edit User");
userRouter.get("/edit", handleEditUser);

const videoRouter = express.Router();
const handleWatchVideo = (req, res) => res.send("Watch Video");
videoRouter.get("/watch", handleWatchVideo);

app.use("/", globalRouter);
app.use("/users", userRouter);
app.use("/videos", videoRouter);

하지만 너무 복잡하다. 라우터가 늘어난다면? 관리하기가 힘들 것이다.

클린코드를위해 라우터별로 파일을 만들어주자

해당 라우터는 src/routers 폴더안에 작성하였다. 다른 모듈(다른 파일)에서 가져오는 것이기 때문에 export / import 를 해주어야 사용가능!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// globalRouter.js
const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);

// userRouter.js
const userRouter = express.Router();
const handleEditUser = (req, res) => res.send("Edit User");
userRouter.get("/edit", handleEditUser);

// videoRouter.js
const videoRouter = express.Router();
const handleWatchVideo = (req, res) => res.send("Watch Video");
videoRouter.get("/watch", handleWatchVideo);

여기에서는 handle 함수가 하나밖에 없어서 상관없지만

일반적인 사이트에서는 middleware 가 여러개 있을 것이다. 따라서? controller 도 다른폴더로 관리해주면 편하다!

src/controllers 폴더에 관리하자!

This post is licensed under CC BY 4.0 by the author.

[Express] Middleware에 관해서(morgan)

[Algorithm][Python] 파이썬 시작하기