Herramientas de usuario

Herramientas del sitio


fw:tornado

¡Esta es una revisión vieja del documento!


Tornado

Básico

import tornado.ioloop
import tornado.web
 
class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")
 
application = tornado.web.Application([
    (r"/", MainHandler),
])
 
if __name__ == "__main__":
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()

Una aplicación que utilice tornado se define a partir de unos patrones que indican la ruta y las clases que gestionarán peticiones a dichas rutas.

RequestHandler's

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("You requested the main page")
 
class StoryHandler(tornado.web.RequestHandler):
    def get(self, story_id):
        self.write("You requested the story " + story_id)
 
application = tornado.web.Application([
    (r"/", MainHandler),
    (r"/story/([0-9]+)", StoryHandler),
])

Cómo...

... Instalar?

$ pip install tornado

... Servir contenido estático?

application = tornado.web.Application([
    (r'/(.*)', tornado.web.StaticFileHandler, {'path': '../static/'}),
    (r'/(.*)', tornado.web.StaticFileHandler, {'path': '../static/index.html'})
])
class IndexHandler(tornado.web.RequestHandler):
    def get(self, *args, **kwargs):
        self.render('index.html')

... Indicar que es debug y se muestre más info por consola?

Como argumento debug=True al constructor del objeto aplicación.

Notas

fw/tornado.1377378155.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)