0.0.1 • Published 3 years ago

aws-lama v0.0.1

Weekly downloads
4
License
ISC
Repository
-
Last release
3 years ago

AWS Lama

AWS Lambda Mapper - Useful for converting http request/response pairs into lambda function event/context pairs and vice versa.

Install

yarn add aws-lama

Usage

Example here is allowing a next.js app to run on lambda without a server. Lama converts the event/context into a pseudo http request response. All changes to the response that next.js makes during its invocation are recorded. Once the response has ended, were using lama to convert that response object into an api gateway response that contains any details/chagnes/data that were applied to the http response.

const lama = require('aws-lama')
const next = require('next')

const app = next({ dev: false })
const handle = app.getRequestHandler()

const {
  NEXT_PATH = '/'
} = process.env

exports.handler = async (event, context) => {

  const { req, res } = await lama.toRequestResponse(event, context)

  if (NEXT_PATH === '*') handle(req, res)
  else app.render(req, res, NEXT_PATH, req.params)

  await res.ended()
  const response = lama.toApiGatewayResponse(req, res)

  return response
}