-
Notifications
You must be signed in to change notification settings - Fork 13
/
Tornado.txt
130 lines (95 loc) · 3.24 KB
/
Tornado.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
===========================================
Guía de Tornado Framework by dM y EngelPain
===========================================
Tornado es un servidor web y un Framework para aplicaciones web escrito en
Python.
Notas
=====
Este manual fue probado en GNU/Linux Debian 9 Stretch de 64bits
Usaremos $ para describir los comandos que se usaran con usuario regular.
Usaremos # para describir los comandos que se usaran con superusuario.
===========
Instalación
===========
Para esta prueba instalaremos tornado usando pip:
# pip install tornado
Se instaló tornado==5.1.1
Tornado requiere Python superior a la versión 3.4 y no soportará Python 2.
=================================
Mi primera aplicación con Tornado
=================================
Habiendo realizado el paso de la instalación con éxito, se procederá a crear un
archivo, se llamará en este caso: holamundo con una extensión .py dado que será
escrito con Python.
Ahora se abre el archivo y dentro de escribirá lo siguiente:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# IOLoop maneja los eventos relacionados con los sockets, por ejemplo, si tienen
# datos disponibles para leer, si pueden escribirse y si se ha producido un
# error.
import tornado.ioloop
# Envía la aplicación al servidor web
import tornado.web
# Clase que enviará el saludo
class HolaMundoHandler(tornado.web.RequestHandler):
def get(self):
self.write("Mensaje a enviar: ¡Hola mundo!")
# Constructor de la aplicación
def enviar_saludo_app():
return tornado.web.Application([
(r"/", HolaMundoHandler),
])
if __name__ == "__main__":
# Aplicación que se servirá
app = enviar_saludo_app()
# Puerto en el que será mostrada
app.listen(8888)
# Corre el servidor
tornado.ioloop.IOLoop.current().start()
===========================
Despliegue de la aplicación
===========================
Desde la consola se debe correr el comando:
$ python holamundo.py
Visitamos la siguiente URL http://localhost:8888/ en el navegador web y se nos
mostrará el mensaje de hola mundo.
==============================
Probando saludos en otras urls
==============================
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# IOLoop maneja los eventos relacionados con los sockets, por ejemplo, si tienen
# datos disponibles para leer, si pueden escribirse y si se ha producido un
# error.
import tornado.ioloop
# Envía la aplicación al servidor web
import tornado.web
# Clase que enviará el saludo
class HolaMundoHandler(tornado.web.RequestHandler):
def get(self):
self.write("¡Hola mundo!")
# Clase que enviará el saludo
class HolaMundoHandler2(tornado.web.RequestHandler):
def get(self):
mensaje = """
<html>
<head></head>
<body>
<p>¡Hola mundo 2!</p>
</body>
</html>
"""
self.write(mensaje)
# Constructor de la aplicación
def enviar_saludo_app():
return tornado.web.Application([
(r"/", HolaMundoHandler),
(r"/2", HolaMundoHandler2),
])
if __name__ == "__main__":
# Aplicación que se servirá
app = enviar_saludo_app()
# Puerto en el que será mostrada
app.listen(8888)
# Corre el servidor
tornado.ioloop.IOLoop.current().start()