1.0.11 • Published 4 years ago

@rasensio/lambda v1.0.11

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

Lambda utilities https://github.com/rasensio/lambdas

Install

npm install @rasensio/lambda

DynamoDB

This utility will infer the payload type using the dynamo marshalling function

const {dynamo} = require('@rasensio/lambda')

exports.handler = async (event) => {
  let payload = {
    name: 'Rodrigo Asensio',
    twitter: "@rasensio",
    location: 'Barcelona, Spain'
  }
  const response = await dynamo.insert("MyTable", payload)
}

API Gateway

Utilities to parse the body and answer a response including CORS

Body parsing

const {api} = require('@rasensio/lambda')

exports.handler = async (event) => {
  // parse the body to json
  let jsonBody = api.json(event)
  // now get the values
  let twitterHandle = jsonBody.twitter
}

Responses

const {api} = require('@rasensio/lambda')

exports.handler = async (event) => {
  // parse the body to json
  let jsonBody = api.json(event)
  // now get the values
  let twitterHandle = jsonBody.twitter
  if (!twitterHandle) {
    // return 400
    return api.bad("enter a value")
  } else {
    // do stuff
    // return 200
    return api.ok("Thank you!")
  }
}

Validation

const {api, validation} = require('@rasensio/lambda')

exports.handler = async (event) => {
  // parse the body to json
  let jsonBody = api.json(event)
  // now get the values
  let email = jsonBody.email
  if (!validation.email(email)) {
    // return 400
    return api.bad("enter a valid email")
  } else {
    // do stuff
    // return 200
    return api.ok("Thank you!")
  }
}
1.0.11

4 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago