首页 > 后端开发 > Python教程 > Python中Tornado的路由解析(附实例)

Python中Tornado的路由解析(附实例)

不言
发布: 2018-10-16 17:47:04
转载
2951 人浏览过

本篇文章给大家带来的内容是关于Python中Tornado的路由解析(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

向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的路由解析(附实例)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:segmentfault.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板