diff --git a/examples/echo.py b/examples/echo.py new file mode 100644 index 00000000..f2eb7533 --- /dev/null +++ b/examples/echo.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 - +# +# This file is part of gunicorn released under the MIT license. +# See the NOTICE for more information. +# +# Example code from Eventlet sources + +import os +import pprint +from wsgiref.validate import validator +import sys + +from gunicorn import __version__ +#@validator +def app(environ, start_response): + """Simplest possible application object""" + + errors = environ['wsgi.errors'] +# pprint.pprint(('ENVIRON', environ), stream=errors) + + print(environ) + if environ['REQUEST_METHOD'].upper() != 'POST': + data = b'Hello, World!\n' + else: + data = environ['wsgi.input'].read() + + + status = '200 OK' + + response_headers = [ + ('Content-type','text/plain'), + ('Content-Length', str(len(data))), + ('X-Gunicorn-Version', __version__), + ("Test", "test ั‚ะตัั‚"), + ] + start_response(status, response_headers) + return iter([data]) diff --git a/gunicorn/workers/gaiohttp.py b/gunicorn/workers/gaiohttp.py index fb109591..63c72e9c 100644 --- a/gunicorn/workers/gaiohttp.py +++ b/gunicorn/workers/gaiohttp.py @@ -49,7 +49,8 @@ class AiohttpWorker(base.Worker): def factory(self, wsgi, host, port): proto = WSGIServerHttpProtocol( - wsgi, loop=self.loop, + wsgi, readpayload=True, + loop=self.loop, log=self.log, debug=self.cfg.debug, keep_alive=self.cfg.keepalive,