Wrap a WSGI application in an AWS Lambda handler function for running on API Gateway.
A quick example:
from apig_wsgi import make_lambda_handler
from myapp.wsgi import app
# Configure this as your entry point in AWS Lambda
lambda_handler = make_lambda_handler(app)
Installation
Use pip:
pip install apig-wsgi
Tested on Python 2.7 and Python 3.6.
Usage
make_lambda_handler(app, binary_support=False)
app should be a WSGI app, for example from Django’s wsgi.py or Flask’s Flask() object.
If you want to support sending binary responses, set binary_support to True and make sure you have '*/*' in the ‘binary media types’ configuration on your Rest API on API Gateway. Note, whilst API Gateway supports a list of media types, using ‘/’ is the best way to do it, since it is used to match the request ‘Accept’ header as well.
Note that binary responses aren’t sent if your response has a ‘Content-Type’ starting ‘text/html’ or ‘application/json’ - this is to support sending larger text responses.
History
Pending Release
1.2.0 (2018-05-14)
Work with base64 encoded body values in requests from API Gateway.
1.1.2 (2018-05-11)
Fix crash using binary support for responses missing a Content-Type header.
1.1.1 (2018-05-11)
Remove debug print()
1.1.0 (2018-05-10)
Add binary_support flag to enable sending binary responses, if enabled on API Gateway.
1.0.0 (2018-03-08)
First release on PyPI, working basic integration for WSGI apps on API Gateway.
Metadata
Release files for apig-wsgi 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| apig-wsgi-1.2.0.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| apig_wsgi-1.2.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 11.2 kB
Release files / apig-wsgi-1.2.0.tar.gz
| Download URL | apig-wsgi-1.2.0.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
162f4a93c6cc763a96e287ccb78ff455a036cb24b2c4c24bae2e401fe059808c
|
|
BLAKE2b-256 checksum How to use checksums |
045d1b2cae946bbc44a99738bdef8d85c130d5ebc35caa69057c277c06d0f614
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / apig_wsgi-1.2.0-py2.py3-none-any.whl
| Download URL | apig_wsgi-1.2.0-py2.py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
450ae9138880e4a706fc44469f918544d3b6c1437471aac1b0a5a15601e08f85
|
|
BLAKE2b-256 checksum How to use checksums |
0aba3a88706f0854d79c1bfbefd7ba9c7a9d834894bdd1ddeca7dac92f0b5758
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |