adaptor

package module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2021 License: Apache-2.0 Imports: 3 Imported by: 0

README

lambda-http-adaptor

Go Reference GitHub

lambda-http-adaptor is a compatible adaptor for Go net/http that can be used in multiple serverless environments.

You can run your existing http.HandlerFunc compatible web application on AWS Lambda or Azure Functions.

Example

lambda-http-adaptor provides the adaptor.ListenAndServe method, which can drop-in replacement for the http.ListenAndServe.

package main

import (
	"github.com/yacchi/lambda-http-adaptor"
	_ "github.com/yacchi/lambda-http-adaptor/all"
	"log"
	"net/http"
)

func main() {
	log.Fatalln(adaptor.ListenAndServe("", http.HandlerFunc(echoReplyHandler)))
}

func echoReplyHandler(w http.ResponseWriter, r *http.Request) {
	m := r.URL.Query().Get("message")
	w.Header().Set("Content-Type", "text/plain")
	w.Write([]byte(m))
}

Features

  • AWS Lambda support
    • API Gateway REST API integration
      • Multi-value headers
      • Multi-value query string
      • Get ProxyRequestContext value from Context
    • API Gateway HTTP API integration
      • Multi-value headers
      • Get V2 HTTPRequestContext value from Context
    • Application Load Balancer Lambda target
      • Multi-value headers
      • Get ALBTargetGroupRequestContext value from Context
    • Get raw request value from Context
    • Lambda container image function
  • AWS API Gateway utilities
    • Strip stage var middleware
    • Abstract interface of RequestContext
  • Azure Functions support
    • HTTP Trigger with custom handler

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ListenAndServe

func ListenAndServe(addr string, h http.Handler) error

Types

This section is empty.

Directories

Path Synopsis
Lambda event type compatibility layer for AWS Application Load Balancer target group mode.
Lambda event type compatibility layer for AWS Application Load Balancer target group mode.
example
simple command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL