第一个Tornado程序

环境:Python3.8

系统:win10 1903

工具:pycharm2019.3

 1 import tornado.web          # web服务基本功能都封装在此模块中
 2 import tornado.ioloop       # 开启循环,让服务一直等待请求的到来
 3 '''
 4 tornado的核心IO循环模块,封装了Linux的epol1和BSD(unix的衍生系统)的kqueue,是tornado高效的基础
 5 '''
 6 # windows 系统下 tornado 使用 使用 SelectorEventLoop
 7 import platform
 8 if platform.system() == "Windows":
 9     import asyncio
10     asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
11 
12 # 业务处理类
13 class IndexHandler(tornado.web.RequestHandler):
14     # 处理get请求,不能处理post请求
15     def get(self,*args,**kwargs):
16         # 对应http请求的方法,给浏览器响应信息
17         self.write("Hello, bilibili")
18 
19 if __name__ == "__main__":
20     # 实例化一个应用对象
21     # Application:是tornado web框架的核心应用类,是与服务器对应的接口,里面保存了路由映射表
22     app = tornado.web.Application([(r"/",IndexHandler)])
23     # 有一个listen方法用来创建一个http服务器的实例,并绑定监听端口
24     app.listen(8000)
25     # IOLoop.current():返回当前线程的1OLoop实例
26     # IOLoop.start():启动IOLoop实例的I/O循环
27     tornado.ioloop.IOLoop.current().start()