Metadata-Version: 2.0
Name: apig-wsgi
Version: 1.1.1
Summary: Wrap a WSGI application in an AWS Lambda handler function for running on API Gateway.
Home-page: https://github.com/adamchainz/apig-wsgi
Author: Adam Johnson
Author-email: me@adamj.eu
License: ISC License
Description-Content-Type: UNKNOWN
Keywords: A,W,S,,, ,L,a,m,b,d,a,,, ,A,P,I, ,G,a,t,e,w,a,y,,, ,A,P,I,G
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: ISC License (ISCL)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Requires-Dist: six

=========
apig-wsgi
=========

.. image:: https://img.shields.io/travis/adamchainz/apig-wsgi/master.svg
        :target: https://travis-ci.org/adamchainz/apig-wsgi

.. image:: https://img.shields.io/pypi/v/apig-wsgi.svg
        :target: https://pypi.python.org/pypi/apig-wsgi

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

A quick example:

.. code-block:: python

    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**:

.. code-block:: sh

    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
---------------

.. Insert new release notes below this line

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.


