Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@packt/serverless-responses

Package Overview
Dependencies
Maintainers
4
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@packt/serverless-responses

Serverless framework used for creating standard callback responses from within the handler function.

  • 0.2.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
4
Weekly downloads
 
Created
Source

serverless-responses

Use this package for creating standard callback responses from within an AWS Lambda function. There is a generic response, an error response and a resource response.

Requirements

  • Nodejs >= 8.10

Example

// handler.js

import { createHttpResponse, createHttpErrorResponse } from '@packt/serverless-responses';

/**
 * Example Handler
 */
const exampleHandler = (event, context, callback) => {
  const randomNr = Math.random() * 100;

  if (randomNr >= 50) {
    return createHttpResponse({
      statusCode: 200,
      data: { message: 'Success message' },
    }, callback);
  }

  return createHttpErrorResponse({
    statusCode: 400,
    message: 'Fail message',
    errorCode: 123456,
  }, callback);
};

export { exampleHandler }; //eslint-disable-line

createHttpResponse

createHttpResponse(params, callback);

The params argument is an object that contains the information necessary to create the response:

  • statusCode: integer between 100 and 600, required
  • data: response payload, string or object, optional
  • options: response options, optional
    • options.cors: boolean, defaults to true
    • options.headers: headers object

The callback argument is the callback function that was pass to the handler function.

createHttpResourceResponse

Used for returning resources in a REST-based API.

createHttpResourceResponse(params, callback);

returns body:
{
  data: [{
    result: object
  }],
  count: integer,
  custom: any
}

The params argument is an object that contains the information necessary to create the response:

  • statusCode: integer between 100 and 600, required
  • result: the resource, must be an object or array or object. If a single object, the result will br returned as an array, required
  • custom: additional properties to include in the root of the body returned.
  • customJoi: Joi schema to validate the custom properties passed in.
  • count: the total number of resources, used for pagination, optional
  • options: response options, optional
    • options.cors: boolean, defaults to true
    • options.headers: headers object

The callback argument is the callback function that was pass to the handler function.

createHttpErrorResponse

Used for returning error messages. This is usedin the event of a malformed request to the other modules.

createHttpErrorResponse(params, callback);

returns body:
{
  message: string,
  errorCode: integer,
  errorId: uuid
}

The params argument is an object that contains the information necessary to create the response:

  • statusCode: integer between 400 and 600, required
  • errorCode: integer, required
  • message: string, required
  • data: response payload, string or object, optional
  • options: response options, optional
    • options.cors: boolean, defaults to true
    • options.headers: headers object

The callback argument is the callback function that was pass to the handler function.

FAQs

Package last updated on 30 May 2018

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc