tornado 中如何用不同的handler处理 path 相同但 search query 不同的 url?

app = Application([
    (r'/user', UserHandler),
    (r'/user?q=.*', UserSearchHandler),
])

上面代码中的正则表达式只能匹配 self.request.path 而不是 self.request.uri, 所以并不能按照它希望的那样工作。

那么 tornado 如何把只是 search query 不同的 url 分配到不同的 handler 中处理呢?

阅读 5.6k
1 个回答

tornado使用URLSpec对象用来mapping url 和 handler,这样每个uri不同请求会分配给不同的handler执行.

调用Application()会把元组(r'/user', UserHandler) 转换成URLSpec对象.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题