[Node.js] Express 라우터(Router)
본문 바로가기
BackEnd/Node.js

[Node.js] Express 라우터(Router)

by liveloper jay 2021. 12. 10.

라우팅이란?

라우팅은 URI(또는 경로) 및 특정한 HTTP 요청 메소드 (GET,POST...)인 특정 엔드포인트에 대한 클라이언트 요청에 애플리케이션이 응답하는 방법을 결정하는 것입니다.
Express 없이 라우터를 만들면 요청 메소드와 주소별로 분기 처리하여야 하기 때문에 코드가 매우 복잡해집니다. 따라서 라우팅에 Express를 사용하는 이유 중 하나는 라우팅을 깔끔하게 관리할 수 있기 때문이라고 할 수 있습니다.

Router 분리하기

const express = require("express");
const app = express(); 
app.get('user/a', function(req, res, next) { res.send(내용); });
app.get('user/b', function(req, res, next) { res.send(내용); });
app.get('user/c', function(req, res, next) { res.send(내용); });
module.exports = router;


코드의 길이가 짧은 경우에는 위의 코드와 같은 식으로 작성을 하여도 되지만, 코드의 길이가 길어지게 되면 위와같이 작성하게 될 경우 유지보수가 굉장히 어려워질 수 있습니다. 따라서 Router를 분리하여 작성을 하는 것이 효율적이며, 예제코드는 아래와 같습니다.

app.js

// Router init
const userRouter = require("./routes/User");
const infoRouter = require("./routes/info");
// Route Start
app.use("/user", userRouter);
app.use("/info", infoRouter);

 

/routes/index.js

const express = require("express");
const router = express.Router();
router.get('/', function(req, res, next){ res.render(내용); });
module.exports = router;

 

댓글