73 lines
2.4 KiB
Plaintext
73 lines
2.4 KiB
Plaintext
|
Metadata-Version: 2.1
|
||
|
Name: tornado
|
||
|
Version: 6.4.1
|
||
|
Summary: Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed.
|
||
|
Home-page: http://www.tornadoweb.org/
|
||
|
Author: Facebook
|
||
|
Author-email: python-tornado@googlegroups.com
|
||
|
License: Apache-2.0
|
||
|
Project-URL: Source, https://github.com/tornadoweb/tornado
|
||
|
Classifier: License :: OSI Approved :: Apache Software License
|
||
|
Classifier: Programming Language :: Python :: 3
|
||
|
Classifier: Programming Language :: Python :: 3.8
|
||
|
Classifier: Programming Language :: Python :: 3.9
|
||
|
Classifier: Programming Language :: Python :: 3.10
|
||
|
Classifier: Programming Language :: Python :: 3.11
|
||
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
||
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
||
|
Requires-Python: >= 3.8
|
||
|
Description-Content-Type: text/x-rst
|
||
|
License-File: LICENSE
|
||
|
|
||
|
Tornado Web Server
|
||
|
==================
|
||
|
|
||
|
.. image:: https://badges.gitter.im/Join%20Chat.svg
|
||
|
:alt: Join the chat at https://gitter.im/tornadoweb/tornado
|
||
|
:target: https://gitter.im/tornadoweb/tornado?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
||
|
|
||
|
`Tornado <http://www.tornadoweb.org>`_ is a Python web framework and
|
||
|
asynchronous networking library, originally developed at `FriendFeed
|
||
|
<http://friendfeed.com>`_. By using non-blocking network I/O, Tornado
|
||
|
can scale to tens of thousands of open connections, making it ideal for
|
||
|
`long polling <http://en.wikipedia.org/wiki/Push_technology#Long_Polling>`_,
|
||
|
`WebSockets <http://en.wikipedia.org/wiki/WebSocket>`_, and other
|
||
|
applications that require a long-lived connection to each user.
|
||
|
|
||
|
Hello, world
|
||
|
------------
|
||
|
|
||
|
Here is a simple "Hello, world" example web app for Tornado:
|
||
|
|
||
|
.. code-block:: python
|
||
|
|
||
|
import asyncio
|
||
|
import tornado
|
||
|
|
||
|
class MainHandler(tornado.web.RequestHandler):
|
||
|
def get(self):
|
||
|
self.write("Hello, world")
|
||
|
|
||
|
def make_app():
|
||
|
return tornado.web.Application([
|
||
|
(r"/", MainHandler),
|
||
|
])
|
||
|
|
||
|
async def main():
|
||
|
app = make_app()
|
||
|
app.listen(8888)
|
||
|
await asyncio.Event().wait()
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
asyncio.run(main())
|
||
|
|
||
|
This example does not use any of Tornado's asynchronous features; for
|
||
|
that see this `simple chat room
|
||
|
<https://github.com/tornadoweb/tornado/tree/stable/demos/chat>`_.
|
||
|
|
||
|
Documentation
|
||
|
-------------
|
||
|
|
||
|
Documentation and links to additional resources are available at
|
||
|
https://www.tornadoweb.org
|