V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Tornado Documentation
http://www.v2ex.com/tornado/
Tornado on GitHub
https://github.com/facebook/tornado/
Tornado Gists
http://tornadogists.org/
Livid
V2EX  ›  Tornado

大家来分享和讨论一些最好的 BaseHandler 实现吧

  •  
  •   Livid · 2011-03-29 22:41:05 +08:00 · 7916 次点击
    这是一个创建于 4965 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在 GAE 和 webapp 和 Tornado 这样的框架中,BaseHandler 可以算是一切的基础。一个强大的 BaseHandler 可以帮助省掉大量不必要的代码。

    Tornado 本身的 RequestHandler 就实现得非常好。但是实际项目中则需要更进一步。

    一个好的 BaseHandler 可以在网站的所有方面提供便利:

    • 管理 HTTP 返回状态码和头部信息
    • 检测浏览器
    • 检测客户端语言
    • 检测 Cookie 或是 Basic/Digest/OAuth Authentication
    • 与数据库链接池交互
    • Session
    • Cookie
    • 管理传入模版引擎的参数
    • 内容压缩

    大家来分享一下自己项目中的 BaseHandler,或是你认为实现得比较好的有哪些吧?
    4 条回复    1970-01-01 08:00:00 +08:00
    keakon
        1
    keakon  
       2011-03-29 22:56:27 +08:00
    我把大部分要用的功能都放到YUI框架里去了,所以自己的BaseHandler基本只是用来render模板的
    https://bitbucket.org/keakon/doodle/src/3ddf46ac59e7/zh-CN/common.py#cl-485
    newblue
        2
    newblue  
       2011-03-29 23:12:53 +08:00
    既然是Handler,就应该做Handler应该做的事情。


    • 管理 HTTP 返回状态码和头部信息
    • 检测浏览器
    • 检测客户端语言
    • 检测 Cookie 或是 Basic/Digest/OAuth Authentication
    • Session
    • Cookie
    • 内容压缩
    • GET/POST

    以上这些比较合适
    gonbo
        3
    gonbo  
       2011-03-30 08:59:52 +08:00
    很多事情,能够在前端,比如nginx 处理的,就让nginx处理好了。

    比如压缩。简单一些也不错。
    ssword
        4
    ssword  
       2011-03-30 09:04:18 +08:00
    Rack
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3043 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:18 · PVG 08:18 · LAX 17:18 · JFK 20:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.