koa中接收前台传递的各种数据类型的方式

标签(空格分隔): koa 数据类型接收


主要介绍三种会用到的中间件,其实都是自己在开发的过程中踩过的坑

  1. 首先介绍koa-body [详情介绍 https://github.com/dlau/koa-body]
    支持三种类型的数据

    1、multipart/form-data
    2、application/x-www-urlencoded
    3、application/json
    使用方法

    $ npm install koa-body
    const koaBody = require('koa-body');
    app.use(koaBody());
    可以设置参数,配合koa-touter使用

    const router = require('koa-router')();
    const koaBody = require('koa-body')({
    multipart: true, // 允许上传多个文件
    formidable: {
    uploadDir: 'public/images/headImage',// 上传的文件存储的路径
    keepExtensions: true // 保存图片的扩展名
    }
    });
    router.post('/users', koaBody,(ctx) => {
    console.log(ctx.request.body);
    ctx.body = JSON.stringify(ctx.request.body);
    }
    );
    app.use(router.routes());

  2. koa-bodyParser中间件 [详情介绍 https://github.com/koajs/bodyparser]
    默认支持json form类型的数据,但是不支持form-data类型的数据 不怎么好用

  3. koa-multer中间件 [详情介绍 https://github.com/koa-modules/multer]
    不同的koa版本,支持不同的multer版本,以及在使用的方式上也有所不同,使用方式查看以上链接文档
    koa-multer仅仅支持multipart/form-data类型的数据

推荐使用第一种方式类满足需求

posted @ 2017-07-28 11:16  Queen-英  阅读(5144)  评论(0)    收藏  举报