时间:2021-07-01 10:21:17 帮助过:577人阅读
向web.Application对象传递的第1个参数URL路由映射列表的配置方式与Django类型,用正则字符串进行路由匹配。
Tornado的路由字符串有两种,固定字符串路径和参数字符串路径
1、固定字串路径
固定字符串即是普通的字符串固定匹配,比如:
- Handlers=[
- ("/",MainHandler), #只匹配跟路径
- ("/entry",EntryHandler) #只匹配/entry
- ("/entry/2019",Entry2019Handler) #只匹配/entry/2019
- ]
2、参数字符路径:正在表达式定义路径
参数子串可以将具备一定模式的路径映射到同一个RequestHandler中处理,其中路径中的参数部分用小括号"()"标识。
实例:参数路径
- import tornado.ioloop
- import tornado.web
- class MainHandler(tornado.web.RequestHandler):
- def get(self,id):
- self.write("Hello World"+id)
- def make_app():
- return tornado.web.Application([
- ("/id/([^/]+)",MainHandler),
- ])
- def main():
- app=make_app()
- app.listen(8888)
- tornado.ioloop.IOLoop.current().start()
- if __name__=="__main__":
- main()
在浏览器输入:http://localhost:8888/id/666
页面输出:
- Hello World666
其中的/id/([^/]+)是正在表达式。可以匹配:
- http://xxx.xxx.xxx/id/xxx
但是无法匹配:
- http://xxx.xxx.xxx/id
要想也匹配这个字符,可以修改正在表达式,将:/id/([^/]+)改为/id/([^/]+)即可。
以上就是Python中Tornado的路由解析(附实例)的详细内容,更多请关注Gxl网其它相关文章!