TIL. 92 [Node.js] express.Router로 라우팅하기

조윤식·2022년 9월 16일
0

node.js가 서버를 구성하기 위해 만들어진 런타임이라고 한다. node.js가 지원하는 내장함수를 통해서 가벼운 서비스는 수월하게 만들 수 있다. 하지만 내장함수만을 이용하여 서버를 만들기는 귀찮은 일이 많다. 특히 라우팅이 그렇다. node.js 내장함수만을 이용하여 만들려면 일일이 조건문을 통해 어떤 url을 통하여 들어왔는지 검사를 해야하며 메소드도 체크해줘야 한다. 적어도 라우팅만이라도 훨 간편하게 하기 위해서 express 프레임워크가 필요하다.

익스프레스의 Router 객체는 쓰기가 매우 편리하다. 먼저 예제를 살펴보자.

// index.js 파일
const express = require('express');

const router = express.Router();

router.get('/', (req, res)=> {
	res.send("router good");
})

module.exports = router;

// test.js 파일
const express = require('express');

const router = express.Router();

router.get('/', (req, res)=> {
	res.send("test good");
})

module.exports = router;

라우터는 만들어졌다. 이제 이런 라우터들을 중앙관리 파일에서 합쳐주자.

//(생략)
const indexRouter = require("./routes/");
const testRouter = require("./routes/test");

//(생략)
app.get("/", indexRouter);
app.get("/test", testRouter);

이렇게하면 URI를 기준으로 라우터가 나뉘어서 클라이언트의 요청에 해당하는 응답을 해준다. router 이후에는 get, post, use 등이 올 수 있는데 각각 어떤 메서드의 요청을 처리할지 정하는 것이고, use는 모든 메서드의 요청을 처리한다.

profile
Slow and steady wins the race

0개의 댓글