路由/路由组
每个路由规则可以传入无限个路由处理器,按照先传入先执行的顺序执行,以下演示创建一个POST路由,并传入3个处理器:
以上路由规则在使有POST方法请求"/"路径时会按以下顺序执行路由处理器:
- /路径的处理器A
- /路径的处理器B
注意,本路由的三个处理器只执行了A和B两个,因为B处理器没有执行ctx.Next(true)
来告知路由器可以继续执行后面的处理器,可以通过这个特性来实现身份验证的拦截等功能。
httpdispatcher.Router.HEAD("路径", 处理器)
httpdispatcher.Router.OPTIONS("路径", 处理器)
HTTP Dispatcher
支持目录和文件两种静态路由,可将整个目录或者某些文件直接暴露给HTTP客户端,示例如下:
注意:静态路由不支持处理器。
HTTP Dispatcher
基于包扩展了路由组功能,路由组支持无限层级的嵌套,以下是两层路由组的示例:
- 入口路由组处理器B
- /news路由组的处理器A
- /news路由组的处理器B