koa 写简单服务

这两天用koa写了点服务,这里面和express还是有部分区别的

  1.静态服务:  koa 中,是有中间件, koa-static,       

   

const static_f = require('koa-static')
const app = new Koa();

app.use(static_f('webroot'))    //和express一样写入文件路径就行

  

  2 koa实例,不能像express直接get方法写路由,如

  

//express:
    app.get('/', function(req,res,next){})

//koa
    app(function(ctx, next){})
       //koa 里面应该是只能放入函数

  

  3 koa, 路由

  

router.get('/codeList', async function(ctx, next) {

   let data =  await sm_model.find()     //sm_model是mongoose.model

    ctx.body = {
        msg: '查询成功',
        code: '0000',
        data: data
    }
})                                       //这里面应该是不能用异步回调(尝试过但并没有返回数据),如果有异步,就要用async await 来解决

  
  4,请求参数获取,以及接口返回

  

get请求获取,参数
    ctx.query  相当于express 的req.body

接口返回
    ctx.body  直接赋值即可

   5.post请求,获取参数

const bodyParser = require('koa-bodyparser')

// 使用ctx.body解析中间件
app.use(bodyParser())

router.post('/codeList', async function (ctx, next) {
   let postData = ctx.request.body
    console.log(postData)
})

 

  

posted @ 2019-04-23 10:23  岁末博  阅读(255)  评论(0编辑  收藏  举报