Express4中文文档
另一个有助于组织路由的特性是一个新类 express.Router
,您可以使用它来创建模块化的可安装路由处理程序。一个Router
实例是一个完整的中间件和路由系统;因此,它通常被称为 "mini-app"。
以下示例将路由器创建为模块,在其中加载中间件,定义一些路由,并将其安装在主应用程序的路径上。
例如,在app目录下创建一个名为birds.js
的路由器文件,内容如下:
var express = require('express')
var router = express.Router()
// middleware specific to this router
router.use((req, res, next) => {
console.log('Time: ', Date.now())
next()
})
// define the home page route
router.get('/', (req, res) => {
res.send('Birds home page')
})
// define the about route
router.get('/about', (req, res) => {
res.send('About birds')
})
module.exports = router
然后,在应用程序中加载路由器模块:
var birds = require('./birds')
// ...
app.use('/birds', birds)
该应用程序现在将能够处理对 /birds
和 /birds/about
路径的请求,并将调用特定于该路由的 timeLog
中间件。