mirror of
https://github.com/frappe/gunicorn.git
synced 2026-01-14 11:09:11 +08:00
add an app example using readline
This commit is contained in:
parent
fbe865f37a
commit
d3307cdfa5
45
examples/readline.py
Normal file
45
examples/readline.py
Normal file
@ -0,0 +1,45 @@
|
||||
# -*- coding: utf-8 -
|
||||
#
|
||||
# This file is part of gunicorn released under the MIT license.
|
||||
# See the NOTICE for more information.
|
||||
#
|
||||
# Simple example of readline, reading from a stream then echoing the response
|
||||
#
|
||||
# Usage:
|
||||
#
|
||||
# Launch a server with the app in a terminal
|
||||
#
|
||||
# $ gunicorn -w3 readline:app
|
||||
#
|
||||
# Then in another terminal launch the following command:
|
||||
#
|
||||
# $ curl -XPOST -d'test\r\ntest2\r\n' -H"Transfer-Encoding: Chunked" http://localhost:8000
|
||||
|
||||
|
||||
|
||||
from gunicorn import __version__
|
||||
|
||||
|
||||
def app(environ, start_response):
|
||||
"""Simplest possible application object"""
|
||||
status = '200 OK'
|
||||
|
||||
response_headers = [
|
||||
('Content-type', 'text/plain'),
|
||||
('Transfer-Encoding', "chunked"),
|
||||
('X-Gunicorn-Version', __version__),
|
||||
#("Test", "test тест"),
|
||||
]
|
||||
start_response(status, response_headers)
|
||||
|
||||
body = environ['wsgi.input']
|
||||
|
||||
lines = []
|
||||
while True:
|
||||
line = body.readline()
|
||||
if line == b"":
|
||||
break
|
||||
print(line)
|
||||
lines.append(line)
|
||||
|
||||
return iter(lines)
|
||||
Loading…
x
Reference in New Issue
Block a user