What is @middy/util?
@middy/util is a utility package that provides a set of helper functions and middlewares to simplify the development of AWS Lambda functions. It is part of the Middy middleware engine, which allows you to compose reusable middleware for your Lambda functions.
What are @middy/util's main functionalities?
createError
The `createError` function helps in creating HTTP errors with a specified status code and message. This is useful for handling errors in a standardized way in your Lambda functions.
const { createError } = require('@middy/util');
const error = createError(400, 'Bad Request');
console.log(error);
jsonSafeParse
The `jsonSafeParse` function safely parses a JSON string into an object. If the string is not valid JSON, it returns `null` instead of throwing an error.
const { jsonSafeParse } = require('@middy/util');
const jsonString = '{"key": "value"}';
const parsedObject = jsonSafeParse(jsonString);
console.log(parsedObject);
normalizeHttpResponse
The `normalizeHttpResponse` function ensures that the HTTP response object conforms to the expected format, making it easier to handle responses in a consistent manner.
const { normalizeHttpResponse } = require('@middy/util');
const response = { statusCode: 200, body: 'Success' };
const normalizedResponse = normalizeHttpResponse(response);
console.log(normalizedResponse);
Other packages similar to @middy/util
aws-lambda-middleware
The `aws-lambda-middleware` package provides a collection of middleware functions for AWS Lambda. It offers similar functionalities to @middy/util, such as error handling and response normalization, but it is not as comprehensive in terms of utility functions.
lambda-middleware
The `lambda-middleware` package is another alternative that provides middleware for AWS Lambda functions. It focuses on simplifying common tasks like input validation, error handling, and response formatting, similar to @middy/util.
lambda-api
The `lambda-api` package is designed to help build RESTful APIs using AWS Lambda. It includes middleware support and offers functionalities like routing, error handling, and response formatting, making it a good alternative to @middy/util for API development.
Middy Util
Util component of the middy middleware, the stylish Node.js middleware engine for AWS Lambda
Install
To install middy you can use NPM:
npm install --save @middy/util
Documentation and examples
For documentation and examples, refers to the main Middy monorepo on GitHub or Middy official website.
Contributing
Everyone is very welcome to contribute to this repository. Feel free to raise issues or to submit Pull Requests.
License
Licensed under MIT License. Copyright (c) 2017-2022 Luciano Mammino, will Farrell, and the Middy team.