树形结构+递归算法实现路由的注册与匹配:

1 数据结构:

// 树节点结构
type Tree struct {
//search fix route first
fixrouters map[string]*Tree
//if set, failure to match fixrouters search then search wildcard
wildcard *Tree //if set, failure to match wildcard search
leaves []*leafInfo
} // 叶子节点结构
type leafInfo struct {
// names of wildcards that lead to this leaf. eg, ["id" "name"] for the wildcard ":id" and ":name"
wildcards []string // if the leaf is regexp
regexps *regexp.Regexp
   // 方法结构信息
runObject interface{}
}

2 简化算法

func (t *Tree) addseg(segments []string, route interface{}, wildcards []string, reg string) {
if len(segments) == {
     // 路径为空,添加叶子节点
t.leaves = append(t.leaves, &leafInfo{runObject: route, wildcards: filterCards, regexps: regexp.MustCompile("^" + reg + "$")})
} else {
     // 解析路径
seg := segments[] // 取路径前面一段
iswild, params, regexpStr := splitSegment(seg) // 解析该段是否为正则段,并提取参数名
     // 为正则节点
        if iswild {
            if t.wildcard == nil {
                t.wildcard = NewTree()
            }
       // xxx 省略N多代码
t.wildcard.addseg(segments[1:], route, append(wildcards, params...), reg+regexpStr)
     } else {
       // 非正则节点 
        subTree, ok := t.fixrouters[seg]
            if !ok {
                subTree = NewTree()
                t.fixrouters[seg] = subTree
            }
            subTree.addseg(segments[1:], route, wildcards, reg)
     }
  }
}

实例解析

1 路由注册

aaarticlea/png;base64,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" alt="" />

2 路由匹配

固定路由: /r1/r2  如图1, 路径段依次与树节点匹配。匹配完刚好存在无参数的叶子节点,表明匹配成功

正则路由: /r1/r4/r3 如图2, r1 <=> r1节点  r4无匹配节点故对应:id正则节点(并将r4保存做实参后与参数名对应,以便获得参数值), r3 <=> r3,  到叶子节点对比参数名与实参个数是否相等,相等匹配成功

高级正则路由:如图3,固定路径段匹配并去掉,剩下未匹配路径重新组装与叶子节点保存的正则串进行正则匹配,并去除对应实参值

ps:beego路由以方法来创建路径树。如存在GET,PUT等等路径树

beego路由实现原理的更多相关文章

  1. 问题.beego路由设置及请求参数传递

    最近项目组安排将一组Lua实现的web服务端代码重构成Go实现,所以顺便学习了下Lua和Go,这里记录下在尝试重构的过程中遇到的几个问题. 1.beego路由设置 路由设置简单说下,主要是调用了pac ...

  2. Go语言web开发---Beego路由

    参考链接(查看更多):https://beego.me/docs/mvc/controller/router.md 基础路由 从 beego 1.2 版本开始支持了基本的 RESTful 函数式路由, ...

  3. react实战系列 —— React 中的表单和路由的原理

    其他章节请看: react实战 系列 React 中的表单和路由的原理 React 中的表单是否简单好用,受控组件和非受控是指什么? React 中的路由原理是什么,如何更好的理解 React 应用的 ...

  4. Vue Router 路由实现原理

    一.概念 通过改变 URL,在不重新请求页面的情况下,更新页面视图. 二.实现方式 更新视图但不重新请求页面,是前端路由原理的核心之一,目前在浏览器环境中这一功能的实现主要有2种方式: 1.Hash  ...

  5. 原生JS实现一个简单的前端路由(原理)

    说一下前端路由实现的简要原理,以 hash 形式(也可以使用 History API 来处理)为例, 当 url 的 hash 发生变化时,触发 hashchange 注册的回调,回调中去进行不同的操 ...

  6. 浅谈history对象以及路由插件原理

    简介 History对象最初设计用来表示窗口的浏览历史,但是,出于隐私方面的原因,History对象不再允许脚本访问已经访问过的实际URL.虽然,我们不清楚历史URL,但是,我们可以通过History ...

  7. 06 Vue路由简介,原理,实现及嵌套路由,动态路由

    路由概念 路由的本质就是一种对应关系,比如说我们在url地址中输入我们要访问的url地址之后,浏览器要去请求这个url地址对应的资源. 那么url地址和真实的资源之间就有一种对应的关系,就是路由. 路 ...

  8. symfony2 路由工作原理及配置

    1.路由是程序的方法和URL的一一映射.

  9. 网络初级篇之VLAN间路由(原理与配置)

    一.VLAN间的路由 由于VLAN隔离了二层广播域,也间接的隔离了各个VLAN之间的其他二层流量交换,这样导致属于不同VLAN之间的用户不能进行二层的通信.只能经过三层的路由转发才能将报文从一个VLA ...

随机推荐

  1. Ubuntu开机出现:Fontconfig warning:"/etc/fonts/conf.d/65-droid-sans-fonts.conf"的解决办法

    Ubuntu升级后可能会出现以下问题: Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line ...

  2. [Oracle] Data Pump 详细使用教程(4)- network_link

    [Oracle] Data Pump 详细使用教程(1)- 总览 [Oracle] Data Pump 详细使用教程(2)- 总览 [Oracle] Data Pump 详细使用教程(3)- 总览 [ ...

  3. 如何优化cocos2d程序的内存使用和程序大小:第二部分_(转)

    减少你的程序的大小 把纹理的颜色位深度减少到16位,不仅可以减少内存压力,还可以有效地减少程序的体积.但是,我们还有其它方法可以更进一步地减少程序的大小. TexturePacker PNG 图片优化 ...

  4. 在32位Windows 8或Windows 7上安装Windows Phone 8 SDK

    这需要一点技巧的,其实WPSDK8是支持32位系统的,可因为微软脑残的限制,安装方法如下: 这里必需要有一个工具,OllyDbg 2.0,去官网下载即可. 启动OD,在菜单打开选项窗口,在Events ...

  5. percona-MYSQLGUI监控

    1.https://www.percona.com/blog/2016/05/26/monitoring-with-percona-app-for-grafana/ http://pmmdemo.pe ...

  6. JSP-标准动作标记

    JSP标准动作标记 在客户请求JSP页面时,JSP动作利用XML语法格式的标记来控制Servlet引擎的行为.利用JSP动作可以动态地插入文件.重用JavaBean组件.把用户重定向到另外的页面.为J ...

  7. SDL 实现透明悬浮窗

    最近一直想用SDL实现弹幕功能,但是一直没法实现悬浮窗和透明背景功能. 在一个老外的博客上发现了思路:EthioProgrammer: Applying transparency using win3 ...

  8. Elasticsearch .Net Client NEST 索引DataSet数据

    NEST 索引DataSet数据,先序列化然后转成dynamic 类型进行索引: /// <summary> /// 索引dataset /// </summary> /// ...

  9. c# 的导入功能SqlBulkCopy

    private static void DataTableToSQLServer( DataTable dt) { string connectionString = GetConnectionStr ...

  10. CakePHP之控制器

    控制器 控制器是MVC中的“C”. 如果你的网站使用Cake框架制作,一般根据url地址和通过路由,就会找到正确的控制器,然后控制器的动作就会被调用. 一个控制器需要解释请求数据.确保使用正确的模型. ...