if all routings are in index.js, it must be a messy place.

/goods/list

/goods/detail

/user/login

/user/register

이렇게 4개의 도메인이 있다고 하면, goods와 user를 나누어서 따로따로 도메인을 사용하게 만들 수 있다.

  1. Make directory name "routes"
  2. Make 2 files name "goods.js" and "user.js"

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b5c48651-ccc3-49c4-a6ed-0e39a0f6ca64/Screen_Shot_2021-06-22_at_10.45.02_AM.png

  1. good.js
const express = require('express');
const router = express.Router();
 
router.get('/list', (req, res, next) => {
  res.send('Router 상품 목록 페이지')
});

router.get('/detail', (req, res, next) => {
  res.send('Router 상품 상세 페이지')
});
  
module.exports = router;
  1. user.js
const express = require('express');
const router = express.Router();

router.get('/login', (req, res, next) => {
    res.send('로그인 페이지')
  })
  
router.get('/register', (req, res, next) => {
    res.send('회원가입 페이지')
  })

module.exports = router;
  1. import route modules in index.js
const express = require('express');
const app = express()
const port = 3000

const goodsRouter = require('./routes/goods');
app.use('/goods', goodsRouter);

const userRouter = require('./routes/user');
app.use('/user', userRouter);

// app.use('/goods', require('./routes/goods'));
// app.use('/user', require('./routes/user'));

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

// this routes are controlled by routers in goods.js
/*
app.get('/goods/list', (req, res) => {
    res.send('상품 목록 페이지')
  })
  
  app.get('/goods/detail', (req, res) => {
    res.send('상품 상세 페이지')
  })
*/
  
// this routes are controlled by routers in user.js
/*
app.get('/user/login', (req, res) => {
    res.send('로그인 페이지')
  })
  
  app.get('/user/register', (req, res) => {
    res.send('회원가입 페이지')
  })
*/

  app.listen(port, () => {
    console.log(`Listening at <http://localhost>:${port}`);
  })