반응형
express 모듈의 페이지 라우팅 기능
- express 모듈의 router 미들웨어를 사용하면 페이지 라우팅 구현 가능
- get, post, put, delete 등의 메서드가 있는데 get을 사용한 예제
var express = require('express');
var app = express();
app.get('/a', function(req, res){
return res.send('aaa');
});
app.listen(52273, function() {
console.log('Server Running at http://127.0.0.1:52273');
});
결과
활용 1. json 등 다른 형태로도 전송 가능
app.get('/a', function(req, res) {
return res.json({message1:'a', message2:'b'});
});
활용 2. params 속성
app.get('/page/:num', function(req, res) {
return res.send(req.params.num + ' page');
});
활용 3. query 속성
app.get('/user', function(req, res) {
return res.send(req.query);
});
활용 4. router 모듈화
- 위에 2, 3번은 모두 main.js에서 처리함
- 만약 프로젝트가 커졌을 때, 한 파일에서 모두 처리하려면 코드도 길어지고 복잡해짐
- 이를 해결하기 위해 router을 모듈화 시키는 방법
- http://127.0.0.1:52273/main => 이 주소이면 'main' 전송
- http://127.0.0.1:52273/user/
~=> 이런 식의 주소이면 user router로 전송 - http://127.0.0.1:52273/page/
~=> 이런 식의 주소이면 page router로 전송 - user.js와 page.js 파일 생성 후 다음과 같이 입력
// main.js
var express = require('express');
var app = express();
app.get('/main', function(req, res) {
return res.send('main');
});
var user = require('./user.js');
var page = require('./page.js');
app.use('/user', user);
app.use('/page', page);
app.listen(52273, function() {
console.log('Server Running at http://127.0.0.1:52273');
});
// user.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res) {
return res.send(req.query);
});
module.exports = router;
// page.js
var express = require('express');
var router = express.Router();
router.get('/:num', function(req, res) {
return res.send(req.params.num + ' page');
});
module.exports = router;
반응형
'Node.js' 카테고리의 다른 글
[Node.js] DB(MySQL)과 연결하기 (0) | 2021.12.03 |
---|---|
[Node.js + Vue.js] axios 통신, cors모듈 (0) | 2021.12.02 |
[Node.js] 웹 서버 생성 (0) | 2021.12.01 |
[Node.js] File System 모듈 사용 예제 및 동기,비동기 개념 (0) | 2021.11.30 |
[Node.js] 모듈 생성 및 사용 예제 (0) | 2021.11.30 |