在 GAE 和 webapp 和 Tornado 这样的框架中,BaseHandler 可以算是一切的基础。一个强大的 BaseHandler 可以帮助省掉大量不必要的代码。
Tornado 本身的 RequestHandler 就实现得非常好。但是实际项目中则需要更进一步。
一个好的 BaseHandler 可以在网站的所有方面提供便利:
• 管理 HTTP 返回状态码和头部信息
• 检测浏览器
• 检测客户端语言
• 检测 Cookie 或是 Basic/Digest/OAuth Authentication
• 与数据库链接池交互
• Session
• Cookie
• 管理传入模版引擎的参数
• 内容压缩
大家来分享一下自己项目中的 BaseHandler,或是你认为实现得比较好的有哪些吧?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://study.congcong.us/t/10651
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.