Socket
Socket
Sign inDemoInstall

lambda-proxy-response

Package Overview
Dependencies
0
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    lambda-proxy-response

A wrap around response for lambda proxy integration


Version published
Weekly downloads
10
increased by400%
Maintainers
1
Install size
14.9 kB
Created
Weekly downloads
 

Readme

Source

Build Status

lambda-proxy-response

A wrap around response for aws lambda integration proxy

Installation

npm install lambda-proxy-response --save

Response creation

  1. Response can be created using response method
const lambdaProxy = require('lambda-proxy-reponse');

exports.handler = (event, context, callback) => {
  // response method needs at least 3 parameters
  // statusCode, headers, body
  const response = lambdaProxy.response(200, { 'X-header': 'Your headers value' }, { 'bodyData': 'yourBodyData' });

  // -> response = {
  //     statusCodes: 200,
  //     headers: {'X-header': 'Your headers value'},
  //     body: '{ "bodyData": "yourBodyData" }' 
  //   }
  callback(null, response);


  // OR you can pass the callback to the `response` method and it will be called automatically
  // The above implementation equal to
  lambdaProxy.response(200, { 'X-header': 'Your headers value' }, { 'bodyData': 'yourBodyData' }, callback);
};
  1. Some others shorthand method, useful for common http status
  • lambdaProxy.ok = lambdaProxy.response(200, ...)
  • lambdaProxy.created = lambdaProxy.response(201, ...)
  • lambdaProxy.badRequest = lambdaProxy.response(400, ...)
  • lambdaProxy.unAuthorized = lambdaProxy.response(401, ...)
  • lambdaProxy.forbidden = lambdaProxy.response(403, ...)
  • lambdaProxy.notFound = lambdaProxy.response(404, ...)
  • lambdaProxy.serverError = lambdaProxy.response(500, ...)

Options

From version 2.0, new config option has been introduced to set default values for response.

body

Default body for every response. Will be overriden if you support new body in the call

// ....
lambdaProxy.config({ body: { bodyData: 'yourDefaultBodyData' } });

// ......
  let response = lambdaProxy.response(200, { 'X-header': 'Your headers value' });

  // -> response = {
  //     statusCodes: 200,
  //     headers: {'X-header': 'Your headers value'},
  //     body: '{ "bodyData": "yourDefaultBodyData" }' 
  //   }

  response = lambdaProxy.response(200, { 'X-header': 'Your headers value' }, { 'bodyData': 'yourBodyData' });
  // -> response = {
  //     statusCodes: 200,
  //     headers: {'X-header': 'Your headers value'},
  //     body: '{ "bodyData": "yourBodyData" }' 
  //   }

headers

Default headers for every response. By default, it will extend whatever headers you provide inside your response. Can be turned off by setting extendHeader in options.

// ....
lambdaProxy.config({ header: { 'X-Default-Header': 'Your default header' } });

// ......
  let response = lambdaProxy.response(200, null, { bodyData: 'yourBodyData' });

  // -> response = {
  //     statusCodes: 200,
  //     headers: { 'X-Default-Header': 'Your default header' },
  //     body: '{ "bodyData": "yourBodyData" }' 
  //   }

  // by default it will extend your header
  response = lambdaProxy.response(200, { 'X-header': 'Your headers value' }, { 'bodyData': 'yourBodyData' });
  // -> response = {
  //     statusCodes: 200,
  //     headers: { 'X-header': 'Your headers value', 'X-Default-Header': 'Your default header' },
  //     body: '{ "bodyData": "yourBodyData" }' 
  //   }

  // you can turn it off by setting config
  lambdaProxy.config({ header: { 'X-Default-Header': 'Your default header' }, extendHeader: false });

  // .......
  response = lambdaProxy.response(200, { 'X-header': 'Your headers value' }, { 'bodyData': 'yourBodyData' });
  // -> response = {
  //     statusCodes: 200,
  //     headers: { 'X-header': 'Your headers value' },
  //     body: '{ "bodyData": "yourBodyData" }' 
  //   }

status

Default status code.

// ....
lambdaProxy.config({ status: 200 });

// ....
  response = lambdaProxy.response();
  // -> response = {
  //     statusCodes: 200,
  //     headers: {},
  //     body: '{}' 
  //   }

Note

This response template is only for used with newly aws lambda proxy integration.

You can read more about it here

Keywords

FAQs

Last updated on 12 Jan 2017

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc