美文网首页
koa路由和参数传递

koa路由和参数传递

作者: 奈何明月照沟渠 | 来源:发表于2023-04-08 22:13 被阅读0次

    koa并未对路由和参数进行高度封装所有需要使用中间件来帮助

    路由@koa/router

    npm install @koa/router
    先将其模块化

    const Router = require('@koa/router')
    const router = new Router({prefix:'/api/v1'})
    
    router.get('/user/info',ctx=>{
        ctx.body = 'hello user'
    })
    
    module.exports = router
    

    然后再用koa的实例use(router.routes())就可以挂载到koa上了

    参数传递

    queryparams是可以通过上下文获取到的但是body不能,此时可以安装koa-body中间件
    npm install koa-body
    之前旧版本引入是直接引入的新版本需要按需引入,引入后再挂载就可以在router中通过ctx.request.body获取到客户端请求的参数了

    const {koaBody} = require('koa-body')
    app.use(koaBody())
    

    错误接管

    抛出错误可以用ctx.throw(401,'用户不存在')
    执行错误可以绑定监听

    app.on('error',(err,ctx)=>{
        console.log(err);
        ctx.body = err
    })
    

    相关文章

      网友评论

          本文标题:koa路由和参数传递

          本文链接:https://www.haomeiwen.com/subject/lxtvddtx.html