app.js
var express = require('express'), dogs = require('./routes/dogs'), cats = require('./routes/cats'), birds = require('./routes/birds');var app = express();app.use('/dogs', dogs);app.use('/cats', cats);app.use('/birds', birds);app.listen(3000);dogs.js
var express = require('express');var router = express.Router();router.get('/', function(req, res) { res.send('GET handler for /dogs route.');});router.post('/', function(req, res) { res.send('POST handler for /dogs route.');});module.exports = router;当
var app = express()被调用时,会返回一个应用对象。将此视为 主要应用程序 。
当
var router = express.Router()被调用时,一个稍微不同的 迷你应用程序 返回。 微型应用程序 背后的想法是,
应用程序 中的每条路线都可能变得非常复杂,并且将所有代码移入一个单独的文件中将使您受益。每个文件的路由器都变成一个 微型应用程序 ,其结构与
主应用程序 非常相似。
在上面的示例中, / dogs 路由的代码已移至其自己的文件中,因此不会干扰 主应用程序 。 / cats 和 /
birds 的代码在它们自己的文件中的结构类似。通过将此代码分成三个 微型应用程序 ,您可以独立处理每个逻辑 程序
的逻辑,而不必担心它将如何影响其他两个逻辑 程序 。
如果您具有与所有这三种路由有关的代码(中间件),则可以在调用之前将其放在
主应用程序中
app.use(...)。如果您具有仅与那些路由之一相关的代码(中间件),则可以将其仅放入该路由的文件中。



