jai-body-parser
v1.1.45
Published
Powerful Node.js module/package for parsing request body
Downloads
19
Maintainers
Keywords
Readme
Jai Body Parser
Simple and fast Node.js module for parsing Http request body. Part of Jai.js ecosystem. Built without any third part dependency. Jai body parser is a middleware for node.js that parses incoming request body in a middleware before your application’s request handlers are called. Allowed content-types 'application/x-www-form-urlencoded', 'text/plain', 'application/json', 'application/javascript','application/xml'.
Features
- Easy Setup
- Config the request body size
- Config specific request methods to implement/use
- Config request header content-types to use
- option to save raw body or payload
- Can be used with any framework
Installation
Install my-project with npm
npm install jai-body-parser
Usage / Examples
// JAI SERVER
const jaiServer = require('jai-server');
const jaiBodyParser = require('jai-body-parser');
const app = jaiServer();
const port = 1111;
app.use(jaiBodyParser(/* options */));
app.post('*', (req, res) => {
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(JSON.stringify({ body: req.body }));
});
app.listen(port, () => {
console.log(`Server listening on http://localhost:${port}/ ...`);
});
// Express
const express = require('express');
const jaiBodyParser = require('jai-body-parser');
const app = express();
const port = 1111;
app.use(jaiBodyParser(/* options */));
app.post('*', (req, res) => {
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(JSON.stringify({ body: req.body }));
});
app.listen(port, () => {
console.log(`Server listening on http://localhost:${port}/ ...`);
});
// OR Http
const http = require('http');
const jaiBodyParser = require('jai-body-parser');
const server = http.createServer(async (req, res) => {
jaiBodyParser(/* options */)(req, res, (err) => {
if (err) {
res.writeHead(200, { 'Content-Type': 'application/json' });
return res.end(JSON.stringify({ Error: err.stack }));
}
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(JSON.stringify({ body: req.body }));
});
});
server.listen(1111, () => {
console.log('Server listening on http://localhost:1111/ ...');
});
API Reference
Options
{
limit: 11111, // in kb
shouldSaveRawBody: false,
allowedMethods: [],
allowedContentTypes:['application/x-www-form-urlencoded' 'text/plain',
'application/json', 'application/javascript', 'application/xml'],
parseNumbers: true
}
| Parameter | Type | Description |
| :-------- | :------- | :------------------------- |
| limit
| integer
| size in kb, default: 100 (100kb)|
| shouldSaveRawBody
| boolean
| should save raw body, default: false. useful when authenticating webhook responses|
| allowedMethods
| array
| array of allowed http methods, default: ['post', 'put', 'patch']|
| allowedContentTypes
| array
| array of allowed Content types, default: ['application/x-www-form-urlencoded' 'text/plain','application/json', 'application/javascript', 'application/xml']
|
| parseNumbers
| boolean
| parse numbers from body text, default: true,