Socket
Socket
Sign inDemoInstall

@middy/http-json-body-parser

Package Overview
Dependencies
1
Maintainers
3
Versions
213
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 4.0.10 to 4.1.0

1

index.d.ts

@@ -7,2 +7,3 @@ import middy from '@middy/core'

reviver?: (key: string, value: any) => any
disableContentTypeError?: boolean
}

@@ -9,0 +10,0 @@

18

index.js
import { createError } from '@middy/util';
const mimePattern = /^application\/(.+\+)?json($|;.+)/;
const defaults = {
reviver: undefined
reviver: undefined,
disableContentTypeError: true
};
const httpJsonBodyParserMiddleware = (opts = {})=>{
const { reviver } = {
const options = {
...defaults,

@@ -14,8 +15,15 @@ ...opts

const contentType = headers['Content-Type'] ?? headers['content-type'];
if (!mimePattern.test(contentType)) return;
if (!mimePattern.test(contentType)) {
if (options.disableContentTypeError) {
return;
}
throw createError(415, '@middy/http-json-body-parser Unsupported Media Type', {
cause: contentType
});
}
try {
const data = request.event.isBase64Encoded ? Buffer.from(body, 'base64').toString() : body;
request.event.body = JSON.parse(data, reviver);
request.event.body = JSON.parse(data, options.reviver);
} catch (cause) {
throw createError(422, 'Invalid or malformed JSON was provided', {
throw createError(415, 'Invalid or malformed JSON was provided', {
cause

@@ -22,0 +30,0 @@ });

{
"name": "@middy/http-json-body-parser",
"version": "4.0.10",
"version": "4.1.0",
"description": "Http JSON body parser middleware for the middy framework",

@@ -67,10 +67,10 @@ "type": "module",

"dependencies": {
"@middy/util": "4.0.10"
"@middy/util": "4.1.0"
},
"devDependencies": {
"@middy/core": "4.0.10",
"@middy/core": "4.1.0",
"@types/aws-lambda": "^8.10.101",
"type-fest": "^3.0.0"
},
"gitHead": "e2a97d380fc4150781004092ea054f5d0fc7a8c0"
"gitHead": "c5abbac9280c3a2f30758188233a7b27367901d1"
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc