This package allows you to use the fasthttp
(and fasthttprouter
) package to create your own service for AWS Lambda.
It has been updated to use aws/aws-lambda-go instead of the eawsy/aws-lambda-go-shim it previously used.
See example/example.go
- A
fasthttplambda.Handle
method, which you should call; - A
fasthttplambda.Router
(of type*fasthttp.Router
) which you should set beforehand;- You can use this Router to define your routes / methods;
- You can use this Router for local development as well, so you don't have to deploy every time.
Currently, it works by catching the request body and headers from the AWS Lambda call, and using them to create an
in-memory fasthttp.Request
to call to the router we defined.
It's be nice to reference the memory already allocated within the event, instead of copying it into our own Request
.
However, since the fasthttp.RequestCtx
is not an interface
, there's little chance to get it working without forking
the fasthttp
package.
Any contributions are welcome. This is just a proof-of-concept at this stage. Bug reports / PRs are welcome.