Herramientas de usuario

Herramientas del sitio


fw:tornado

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
fw:tornado [2013/08/24 18:32]
alfred
fw:tornado [2020/05/09 09:25] (actual)
Línea 1: Línea 1:
 ====== Tornado ====== ====== Tornado ======
 ===== Básico ===== ===== Básico =====
 +  * [[http://​www.tornadoweb.org/​en/​stable/​|Web del proyecto]]
 +  * [[http://​www.tornadoweb.org/​en/​branch2.4/​overview.html|Overview]] y [[http://​www.tornadoweb.org/​en/​branch2.4/​documentation.html|Documentación]].
 +
 <code python> <code python>
 import tornado.ioloop import tornado.ioloop
Línea 17: Línea 20:
     tornado.ioloop.IOLoop.instance().start()     tornado.ioloop.IOLoop.instance().start()
 </​code>​ </​code>​
-Una aplicación ​+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 ==== 
 +<code python>​ 
 +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),​ 
 +]) 
 +</​code>​
 ==== Cómo... ==== ==== Cómo... ====
 +=== ... Instalar? ===
 +<​code>​
 +$ pip install tornado
 +</​code>​
 === ... Servir contenido estático? === === ... Servir contenido estático? ===
 +<code python>
 +application = tornado.web.Application([
 +    (r'/​(.*)',​ tornado.web.StaticFileHandler,​ {'​path':​ '​../​static/'​}),​
 +    (r'/​(.*)',​ tornado.web.StaticFileHandler,​ {'​path':​ '​../​static/​index.html'​})
 +])
 +</​code>​
 +<code python>
 +class IndexHandler(tornado.web.RequestHandler):​
 +    def get(self, *args, **kwargs):
 +        self.render('​index.html'​)
 +</​code>​
 === ... Indicar que es debug y se muestre más info por consola? === === ... Indicar que es debug y se muestre más info por consola? ===
 +Como argumento ''​debug=True''​ al constructor del objeto aplicación.
 ===== Notas ===== ===== Notas =====
-  * {{:​fw:​tornado:​tornado_zmq_websockets.zip|Estos apuntes}} explican cómo crear un websocket que publica a partir de datos recibidos por ZeroMQ.+  * {{:​fw:​tornado:​tornado_zmq_websockets.zip|Estos apuntes}} explican cómo crear un websocket que publica a partir de datos recibidos por ZeroMQ. ​Fuentes: 
 +    * [[http://​zeromq.github.io/​pyzmq/​eventloop.html]] 
 +    * [[https://​learning-0mq-with-pyzmq.readthedocs.org/​en/​latest/​pyzmq/​multisocket/​tornadoeventloop.html]]. 
 +    * [[https://​github.com/​FZambia/​tornado-zmq-sockjs-example]]
fw/tornado.1377369138.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)