因为我们需要解决一些问题:
动态路由:比如: www.xxxx.com/a/1 一但刷新,那么就意味着404的错误会发生,
但是这个是make sense的,因为page里面本来就没有a/1这个文件
所以这里我们就要koa来作为中间件来帮助我们解决这个问题
'''
router.get('/a/:id', async (ctx) =>{
const id = ctx.params.id
await handler(ctx.req, ctx.res, {
pathname:'/a',
query: {id}
})
ctx.response = false
})
server.use(router.routes())
'''
上面的这段koa就会帮助我们
当访问了/a/id, koa的服务器就会辅助我们把router里面的事情在做一遍,这样就能帮助整个系统来找到这个动态的路径
use的设计其实是用于插入中间件的,处理一些通用的行为比如管理session。当然直接响应请求也是允许的。但是对于业务比较复杂的场景,直接在这个地方响应请求的话后期会比较难维护。一般对于请求还是用 koa-router 分路由用不同的模块处理。这也是目前web框架的主流做法。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)