# ...└── server # 后端代码目录└── routers├── admin.js # /admin/* 子路由├── api.js # resetful /api/* 子路由├── error.js # /error/* 子路由├── home.js # 主页子路由├── index.js # 子路由汇总文件└── work.js # /work/* 子路由# ...
例如api子路由/user/getUserInfo.json
,整合到主路由,加载到中间件后,请求的路径会是 http://www.example.com/api/user/getUserInfo.json
./demos/project/server/routers/api.js
/*** restful api 子路由*/const router = require('koa-router')()const userInfoController = require('./../controllers/user-info')const routers = router.get('/user/getUserInfo.json', userInfoController.getLoginUserInfo).post('/user/signIn.json', userInfoController.signIn).post('/user/signUp.json', userInfoController.signUp)module.exports = routers
./demos/project/server/routers/index.js
/*** 整合所有子路由*/const router = require('koa-router')()const home = require('./home')const api = require('./api')const admin = require('./admin')const work = require('./work')const error = require('./error')router.use('/', home.routes(), home.allowedMethods())router.use('/api', api.routes(), api.allowedMethods())router.use('/admin', admin.routes(), admin.allowedMethods())router.use('/work', work.routes(), work.allowedMethods())router.use('/error', error.routes(), error.allowedMethods())module.exports = router
./demos/project/server/app.js
const routers = require('./routers/index')// 初始化路由中间件app.use(routers.routes()).use(routers.allowedMethods())