Skip to main content

Wrap a WSGI application in an AWS Lambda handler function for running on API Gateway.

Project description

https://img.shields.io/travis/adamchainz/apig-wsgi/master.svg https://img.shields.io/pypi/v/apig-wsgi.svg

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apig-wsgi-1.2.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apig_wsgi-1.2.0-py2.py3-none-any.whl (6.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file apig-wsgi-1.2.0.tar.gz.

File metadata

  • Download URL: apig-wsgi-1.2.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for apig-wsgi-1.2.0.tar.gz
Algorithm Hash digest
SHA256 162f4a93c6cc763a96e287ccb78ff455a036cb24b2c4c24bae2e401fe059808c
MD5 e769af7158cb7316ecf9dbe27c91cd6d
BLAKE2b-256 045d1b2cae946bbc44a99738bdef8d85c130d5ebc35caa69057c277c06d0f614

See more details on using hashes here.

File details

Details for the file apig_wsgi-1.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for apig_wsgi-1.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 450ae9138880e4a706fc44469f918544d3b6c1437471aac1b0a5a15601e08f85
MD5 ecda0ad6f76de9cea6b8c6dd5fb89145
BLAKE2b-256 0aba3a88706f0854d79c1bfbefd7ba9c7a9d834894bdd1ddeca7dac92f0b5758

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page