Tornado简介
Tornado-基于Python的web服务端框架, 与现有主流的web服务端(以及大多数Python框架)有着明显的区别: 它是非阻塞式,速度相当快。得利于其非阻塞式的方式,Tornado每秒可以处理数以千计的连接,因此是实时web服务的一个理想框架。
Tornado使用
Tornado安装
pip install tornado # 这里我们使用的版本是5.1 Python版本是3.6
Tornado web程序流程
- 创建web应用实例对象,第一个初始化参数为路由映射列表
- 定义实现路由映射列表的handler类
- 创建实例,监听服务器端口
- 启动。执行IOLoop类的start()方法
处理HTTP请求
实现下列方法来处理HTTP请求
- 1. RequestHandler.get(args, kwargs) # 处理get请求
- 2. RequestHandler.post(*args, kwargs) # 处理post请求
- 3. RequestHandler.put(args, kwargs) # 处理put请求
- 4. RequestHandler.delete(*args, kwargs) # 处理delete请求
Hello world
创建一个hello.py然后写入下列代码
import tornado.ioloop import tornado.web class MainHandler(tornado.web.RequestHandler): def get(self): self.write("Hello world") class Application(tornado.web.Application): def __init__(self): handlers = [ (r'/', MainHandler), ] tornado.web.Application.__init__(self, handlers) if __name__=="__main__": app = Application() app.listen(8000) print("Tornado Started in port 8000,http://127.0.0.1:8000") tornado.ioloop.IOLoop.current().start()
执行该文件
python3 hello.py
当你看到控制台输出:
Tornado Started in port 8000,http://127.0.0.1:8000
既运行成功,此时浏览器访问127.0.0.1:8000就可以看到Hello world
这个Hello world创建了一个socket服务并监听8000端口,当接收到请求时根据路由规则来找到相应的类处理该请求,并根据请求方式指定相应类中的指定方法处理。 所以当我们在浏览器键入127.0.0.1:8000,服务端会给浏览器返回Hello world。