package main
import (
"context"
"net/http"
"github.com/aws/aws-lambda-go/events"
"github.com/aws/aws-lambda-go/lambda"
"github.com/go-chi/chi"
chiproxy "github.com/awslabs/aws-lambda-go-api-proxy/chi"
)
var adapter *chiproxy.ChiLambda
func FirstHandler(w http.ResponseWriter, r *http.Request) {
...
}
func SecondHandler(w http.ResponseWriter, r *http.Request) {
...
}
func init() {
r := chi.NewRouter()
r.Get("/api/route", FirstHandler)
r.Post("/api/route", SecondHandler)
adapter = chiproxy.New(r)
}
func lambdaHandler(ctx context.Context, r events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
c, err := adapter.ProxyWithContext(ctx, r)
return c, err
}
func main() {
lambda.Start(lambdaHandler)
}
Created
May 4, 2023 05:37
-
-
Save DoZator/463a474b0fe75e115091899db5857c00 to your computer and use it in GitHub Desktop.
AWS Lambda with go-chi
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment