개발/Web

[Node.js] express .Router( ) / 라우터로 파일 정리하기

유훈 | Yuhun 2022. 1. 11. 01:16
반응형

node로 url을 받아 데이터를 보내줄때 한 파일에 모두 작성하면 파일이 보기 힘들고 관리가 어려워집니다.

그래서 url을 보고 정리할 수 있도록 도와주는게 router인데 미 모듈을 사용해 보도록 하겠습니다.

 

파일 구성

다음과 같이 메인 server.js 파일이 있고 routing할 것은 routes 폴더를 만들어 test.js 파일로 관리해 보겠습니다.

최대한 간단하게 다음으로 파일을 구성합니다.

 

서버가 localhost:5000 이라고 가정하겠습니다.

우리가 http://localhost:5000/test/test1 , http://localhost:5000/test/test2 라는 요청을 한다고 할 때 다음의 파일을 보고 설명하겠습니다.

 

 

server.js

const express = require('express');
const app = express();
const test = require('./routes/test'); // 아래에 만든 라우터 파일 가져오기!
const port = 5000; // 포트 넘버

app.use('/test', test); // 라우터 연결


// 포트 설정
app.listen(port, () => console.log(port));

app.use는 http://localhost:5000/test 로 들어온 파일들을 test로 연결해 줍니다.

그러면 우리가 요청한 두개의 url은 모두 test에서 처리가 되겠죠?

 

test.js

const express = require('express');
const router = express.Router(); // 라우터 import

router.get('/test1', (req, res) => { // http://localhost:5000/test/test1 처리 
	res.send('응답 1');
});

router.get('/test2', (req, res) => { // http://localhost:5000/test/test2 처리
	res.send('응답 2');
});


module.exports = router;

 

그러면 이제 http://localhost:5000/test 뒤에 붙은 /test1과 /test2를 가지고 데이터를 처리하게 됩니다.

 

http://localhost:5000/test/test1  -> 응답 1 

http://localhost:5000/test/test2 -> 응답 2

 

이렇게 url을 원하는대로 분리해 처리할 수 있게 됩니다.

 

 

반응형