Vanilla 的路由器 vanilla.v.router 是请求路由的基础,路由器提供了对路由协议的添加 addRoute(route, only_one),删除 ,获取路由列表 getRoutes() 等方法,用户可以调用这些方法来管理路由协议栈并使用路由器,不过用户不需要关心路由器的实现,而只需要关注路由协议的实现。

    给路由器添加一条路由协议

    删除一条路由协议

    Vanilla 的每条路由协议都有 route_name 属性,删除时只需要调用

    获取当前所使用的路由协议

    路由协议

    路由协议非常的简单,因为路由协议的关键功能在于为当前请求找到对应的 controlleraction,核心在于根据当前请求实例 request,通过实现 match 方法,来获取结果,下面是根据 vanilla.v.routes.simple 路由协议提炼出来的路由协议简单骨架:

    • request 是当前请求的实例,包含了当前请求携带的 URI,http_header 等数据,是请求路由的依据