Socket
Socket
Sign inDemoInstall

co-body

Package Overview
Dependencies
31
Maintainers
3
Versions
20
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

co-body

request body parsing for co


Version published
Maintainers
3
Weekly downloads
963,730
decreased by-0.6%
Bundle size
192.7 kB
Minified + gzipped

Weekly downloads

Readme

Source

co-body

NPM version build status Test coverage David deps npm download

Parse request bodies with generators inspired by Raynos/body.

Installation

$ npm install co-body

Options

  • limit number or string representing the request size limit (1mb for json and 56kb for form-urlencoded)
  • strict when set to true, JSON parser will only accept arrays and objects; when false will accept anything JSON.parse accepts. Defaults to true. (also strict mode will always return object).
  • queryString an object of options when parsing query strings and form data. See qs for more information.
  • returnRawBody when set to true, the return value of co-body will be an object with two properties: { parsed: /* parsed value */, raw: /* raw body */}.
  • jsonTypes is used to determine what media type co-body will parse as json, this option is passed directly to the type-is library.
  • formTypes is used to determine what media type co-body will parse as form, this option is passed directly to the type-is library.
  • textTypes is used to determine what media type co-body will parse as text, this option is passed directly to the type-is library.

more options available via raw-body:

Example

// application/json
var body = await parse.json(req);

// explicit limit
var body = await parse.json(req, { limit: '10kb' });

// application/x-www-form-urlencoded
var body = await parse.form(req);

// text/plain
var body = await parse.text(req);

// either
var body = await parse(req);

// custom type
var body = await parse(req, { textTypes: ['text', 'html'] });

Koa

This lib also supports ctx.req in Koa (or other libraries), so that you may simply use this instead of this.req.

// application/json
var body = await parse.json(this);

// application/x-www-form-urlencoded
var body = await parse.form(this);

// text/plain
var body = await parse.text(this);

// either
var body = await parse(this);

License

MIT

Keywords

FAQs

Last updated on 08 Oct 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc