友情提示:
1.文中大多是总结性的文字, 涉及很多省略的前置基础知识,可以自行搜索酌情补充;
2.另,个人水平有限,难免出错误导,请谨慎阅读
3.可以参考github上详细的代码笔记, 一定会有收获
谈谈我在学习Tornado时的一些理解:
9.补充 debug 模式
tornado是默认为debug=False即工作在生产模式。当设置debug=True 后,tornado会工作在调试/开发模式,在此种模式下,tornado为方便我们开发而提供了几种特性:
- 1.自动重启,tornado应用会监控我们的源代码文件,当有改动保存后便会重启程序,这可以减少我们手动重启程序的次数。需要注意的是,一旦我们保存的更改有错误,自动重启会导致程序报错而退出,从而需要我们保存修正错误后手动启动程序。这一特性也可单独通过autoreload=True设置;
- 2.取消缓存编译的模板,可以单独通过compiled_template_cache=False来设置;
- 3.取消缓存静态文件hash值,可以单独通过static_hash_cache=False来设置;
- 4.提供追踪信息,当RequestHandler或者其子类抛出一个异常而未被捕获后,会生成一个包含追踪信息的页面,可以单独通过serve_traceback=True来设置。
- 补充说明:取消缓存,可以在我们修改静态文件后,浏览器是用最新的内容而不是缓存.
10.tornado的RequestHandler类封装方法的调用顺序
在正常情况未抛出错误时,调用顺序为:
set_defautl_headers()
initialize()
prepare()
HTTP方法
on_finish()