Node.js Express子域中的拆分路由器

Node.js Express子域中的拆分路由器,node.js,express,Node.js,Express,大多数时候,当我们想在node.js Express应用程序中拆分路由器时,我们会这样做 var express = require('express') var router = express.Router() // middleware that is specific to this router router.use(function timeLog (req, res, next) { console.log('Time: ', Date.now()) next() })

大多数时候,当我们想在node.js Express应用程序中拆分路由器时,我们会这样做

var express = require('express')
var router = express.Router()

// middleware that is specific to this router
router.use(function timeLog (req, res, next) {
  console.log('Time: ', Date.now())
  next()
})
// define the home page route
router.get('/', function (req, res) {
  res.send('Birds home page')
})
// define the about route
router.get('/about', function (req, res) {
  res.send('About birds')
})

module.exports = router
然后,在应用程序中加载路由器模块:

var birds = require('./birds')

// ...

app.use('/birds', birds)
然而,在快速子域中,是否有任何方法可以像上面那样在子域中为鸟类分割路由器

var router = express.Router();

//api specific routes 
router.get('/', function(req, res) {
    res.send('Welcome to our API!');
});

router.get('/birds', function(req, res) {
    res.json([
        { name: "Brian" }
    ]);
});
然后,在应用程序中加载路由器模块:(这不允许我拆分更多路由器???

app.use(subdomain('api', router));
使用router.Use(),解决了我的问题

var router = express.Router();
var birds = require('./birds')

//api specific routes 
router.get('/', function(req, res) {
    res.send('Welcome to our API!');
});

router.use('/birds', birds);