koay-body

A body parser middleware for Koa to parse multipart, urlencoded and JSON request bodies.

Usage no npm install needed!

<script type="module">
  import koayBody from 'https://cdn.skypack.dev/koay-body';
</script>

README

koay-body

npm package

Note: A full-featured koa body parser middleware. Supports multipart, urlencoded, and json request bodies.


Installation

Node >= 7.6

npm install --save koay-body

Usage

const bodyParser = require('koay-body');
const Koa = require('koa');

const app = new Koa();

app.use(bodyParser({
  formidable: {}, // default
  requestBody: 'body', // default
  requestFiles: 'files' // default
}));
app.use((ctx) => {
  // 禁用bodyparser
  ctx.disableBodyParser = true;
});
app.use((ctx) => {
  const { body } = ctx.request;

  console.log(body);
  
  ctx.body = body;
});

Options explanation:

  • encoding 设置表单字段的编码
  • uploadDir 设置上传后的文件存放的目录, 默认为: os.tmpdir()
  • keepExtensions 设置上传后的文件是否保持原来的扩展名
  • type 可以设置成 multipart or urlencoded
  • maxFieldsSize 设置提交到后台数据的大小, 默认为: 20MB
  • maxFileSize 设置上传文件的大小, 默认为: 200MB
  • maxFields 设置url后面可接收的参数, 默认为: 1000
  • hash 使用sha1 or md5校验文件

Go to formidable API