1.什么是RequestHandler
tornado.web.RequestHandler是http请求处理程序的基类,每个RequestHandler类可以定义多个http方法的行为,一般会爸概念相关的功能绑定到同一个类是一个很好的方法。
2.RequestHandler功能方法
2.1initialize
钩子类初始化,每个请求都会调用
2.2prepare
在get、post、put之前的请求开始时都会调用,执行通用初始化
2.3on_finish
请求结束时调用,用于执行清理,日志记录等
2.4set_status
显示地设置状态码,tornado会自动的设置http状态码
2.5finish
结束响应,在函数中可以返回内容
3.请求方法
- get
- head
- post
- delete
- patch
- put
- Options
3.1测试请求方法代码
from tornado import web
from tornado import ioloop
class IndexHanler(web.RequestHandler):
# 初始化函数,一般用于初始化环境变量(连接数据库)
def initialize(self):
pass
# 在get、post、put之前的请求开始时都会调用,执行通用初始化
# 一般用于记录日志,打开文件
def prepare(self):
print('prepare')
# 请求结束时调用,用于执行清理,日志记录等
# 一般用于清理内容
def on_finish(self):
print("on_finish")
def get(self):
print("正在访问请求")
self.write("get请求访问")
# self.set_status(404) # 直接返回响应状态码,比如404就直接无法访问
self.finish({'msg':'get success!!!!'}) # 响应结束时输出:finish之后无法操作其他内容
def post(self):
print('info from post')
self.write('POST请求成功!!!')
if __name__=='__main__':
app = web.Application([('/',IndexHanler)],debug=True)
app.listen(8000)
ioloop.IOLoop.current().start()