Have ideas to improve npm?Join in the discussion! »

    body-bson

    1.0.13 • Public • Published

    body-bson

    express/koa middleware to parse bson body.

    Example

    For koa:

    var Koa = require('koa');
    var bodyBson = require('body-bson');
     
    var app = new Koa();
    app.use(bodyBson());
     
    app.use(async ctx => {
      // the parsed body will store in ctx.request.body
      // if nothing was parsed, body will be undefined
      // body may contain value of bson types 
      var body = ctx.request.body;
    });

    For express

    var express = require('express')
    var bodyBson = require('body-bson')
     
    var app = express()
     
    // parse application/bson
    app.use(bodyBson.json())
     
    app.use(function (req, res) {
      // the parsed body will store in req.body
      // if nothing was parsed, body will be undefined
      // body may contain value of bson types 
      var body=  req.body;
    })

    API

    bodyBson

    var bodyBson = require('body-bson')

    The bodyBson function is a factory to create middleware.

    app.use(bodyBson(option))

    The middleware will populate the request.rawBody property with the parsed body when the Content-Type request header matches the type option(default to application/bson), nothing would be modified if the Content-Type was not matched, or an error occurred.

    bodyBson.bson

    The default bson instance used by bodyBson. It's exported for convenience.

    options

    bson

    Controls the bson instance to deserialize the body. One method is required for the instance: bson.deserialize(buffer). Defaults to instance created by bson@1.1.0.

    limit

    Controls the maximum request body size. If this is a number, then the value specifies the number of bytes; if it is a string, the value is passed to the bytes library for parsing. Defaults to '10mb'.

    ### type

    Controls the matching Content-Type headers, can pass a string or an array of strings. Defaults to 'application/bson'.

    rawBody

    Controls whether to generate request.rawBody to represent raw buffer received. request.rawBody will only be generated if request.rawBody should be generated. Defaults to false.

    Install

    npm i body-bson

    DownloadsWeekly Downloads

    14

    Version

    1.0.13

    License

    MIT

    Unpacked Size

    6.39 kB

    Total Files

    5

    Last publish

    Collaborators

    • avatar