Security News
JavaScript Leaders Demand Oracle Release the JavaScript Trademark
In an open letter, JavaScript community leaders urge Oracle to give up the JavaScript trademark, arguing that it has been effectively abandoned through nonuse.
@middy/http-json-body-parser
Advanced tools
Http JSON body parser middleware for the middy framework
@middy/http-json-body-parser is a middleware for AWS Lambda functions that automatically parses JSON-encoded request bodies. It simplifies the process of handling JSON input in serverless applications by converting the body of incoming HTTP requests into a JavaScript object.
Automatic JSON Parsing
This feature automatically parses the JSON body of incoming HTTP requests and makes it available as a JavaScript object in `event.body`. This eliminates the need to manually parse the JSON string in each handler.
const middy = require('@middy/core');
const jsonBodyParser = require('@middy/http-json-body-parser');
const handler = middy((event, context) => {
// event.body is now a parsed JSON object
return {
statusCode: 200,
body: JSON.stringify({ message: 'Parsed body', data: event.body })
};
});
handler.use(jsonBodyParser());
module.exports = { handler };
body-parser is a Node.js middleware for parsing incoming request bodies in a middleware before your handlers, available under the `req.body` property. It supports various content types including JSON, URL-encoded, and raw data. Unlike @middy/http-json-body-parser, which is specifically designed for AWS Lambda, body-parser is more general-purpose and can be used in any Node.js application.
lambda-middleware is a collection of middleware for AWS Lambda functions, similar to Middy. It includes a JSON body parser middleware that provides similar functionality to @middy/http-json-body-parser. However, lambda-middleware offers a broader set of middleware options for various use cases.
HTTP json body parser middleware for the middy framework, the stylish Node.js middleware engine for AWS Lambda
This middleware automatically parses HTTP requests with a JSON body and converts the body into an
object. Also handles gracefully broken JSON as UnprocessableEntity (422 errors)
if used in combination with httpErrorHandler
.
It can also be used in combination with validator as a prior step to normalize the event body input as an object so that the content can be validated.
To install this middleware you can use NPM:
npm install --save @middy/http-json-body-parser
This middleware does not have any option
const middy = require('@middy/core')
const httpJsonBodyParser = require('@middy/http-json-body-parser')
const handler = middy((event, context, cb) => {
cb(null, {})
})
handler.use(httpJsonBodyParser())
// invokes the handler
const event = {
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({foo: 'bar'})
}
handler(event, {}, (_, body) => {
expect(body).toEqual({foo: 'bar'})
})
For more documentation and examples, refers to the main Middy monorepo on GitHub or Middy official website.
Everyone is very welcome to contribute to this repository. Feel free to raise issues or to submit Pull Requests.
Licensed under MIT License. Copyright (c) 2017-2018 Luciano Mammino and the Middy team.
FAQs
Http JSON body parser middleware for the middy framework
The npm package @middy/http-json-body-parser receives a total of 125,182 weekly downloads. As such, @middy/http-json-body-parser popularity was classified as popular.
We found that @middy/http-json-body-parser demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
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.
Security News
In an open letter, JavaScript community leaders urge Oracle to give up the JavaScript trademark, arguing that it has been effectively abandoned through nonuse.
Security News
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Security News
Floating dependency ranges in npm can introduce instability and security risks into your project by allowing unverified or incompatible versions to be installed automatically, leading to unpredictable behavior and potential conflicts.