‚̧Notoriously Psychedelic Modules

    http-body-parser

    1.1.9¬†‚Äʬ†Public¬†‚Äʬ†Published

    http-body-parser

    NPM version build status Coveralls David deps node version Gittip

    ūüĒ• A body parser for koa, express. support json, form, text, multipart and stream type body.

    Install

    NPM

    Usage

    Koa

    const Koa = require('koa');
    const bodyParser = require('http-body-parser').koa;
     
    const app = new Koa();
    app.use(bodyParser({}));
     
    app.use(async ctx => {
      // the parsed body will store in ctx.request.body
      // if nothing was parsed, body will be an empty object {}
      ctx.body = ctx.request.body;
    });

    Express

    const express = require('express');
    const bodyParser = require('http-body-parser').express;
     
    const app = express();
    app.use(bodyParser({}));
     
    server.use('/', function(req, res) {
      res.send(req.body)
    })

    Features

    • Based on the ES6 syntax, the code is concise
    • No third party module dependent
    • Support Koa and Express

    Options

    • default options
    {
        enableTypes: ['json', 'form', 'text', 'multipart', 'stream'],
        json: {
          limit: 1024*1024,
          strict: true,
          extendsTypes: []
        },
        text: {
          limit: 1024*1024,
          extendsTypes: []
        },
        form: {
          limit: 56*1024,
          extendsTypes: []
        },
        stream: {
          limit: 1024*1024,
          path: `the operating system's default directory`
        },
        multipart: {
          limit: 1024*1024,
          path: `the operating system's default directory`
        }
    }
    • enableTypes: parser will only parse when request type hits enableTypes, default is ['json', 'form', 'text', 'multipart', 'stream'].
    • encode: requested encoding. Default is utf-8.
    • limit: limit of the body. If the body ends up being larger than this limit, a 413 error code is returned.
    • strict: when set to true, JSON parser will only accept arrays and objects. Default is true.
    • extendTypes: support extend types, eg: application/x-javascript
    • path: which folder the uploaded files should be stored, active on multipart, stream

    Raw Body

    You can access raw request body by ctx.request.rawBody

    Install

    npm i http-body-parser

    DownloadsWeekly Downloads

    29

    Version

    1.1.9

    License

    ISC

    Last publish

    Collaborators

    • eqfox