位置: 编程技术 - 正文
推荐整理分享python用装饰器自动注册Tornado路由详解,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
第一个版本
在这个版本中,首先创建了 RouterConfig 对象,其构造方法创建了 tornado.web.Application() 并赋值为 self.Application ,在每个 Handler 上添加 @app.route 装饰器,对应的就是 RouterConfig 下面的 route 对象,其中 Handler 实例会被赋值到 handler 参数中,最后把 URL 和 Handler 对应关系添加到路由表中, URL 在每个 Handler 中创建的属性。
第二个版本
创建 Route 对象,然后再 Handler 上加上装饰器 @route(r'/') ,并把 URL 传递进来,其中对应到 __call__ 方法中的 url 参数,然后把路由对应关系以元祖的方式添加到列表中,待所有的路由都添加完成之后,创建Tornado的路有对象,然后把路由表放进去,最后完成注册。
第三个版本
这个版本也是我现在在使用版本,原理都一样,这里的特点就是继承Tornado路由对象
测试
以上一个版本中,测试方法及输出都是一样的,可以用 requests 模块模拟HTTP请求
总结
友情链接: 武汉网站建设