项目在 https://github.com/issue9/mux
能够自动生成 OPTIONS 和 HEAD 的请求处理方式;
也支持类似于 discuz 的路由风格,不会假定两个参数之间必须要有一个 / 符号分隔;
能正确区分不同类型的参数,比如 `/posts/{id}` 和 `/posts/{id:\\d+}`,只有无法匹配后者的时候,才会尝试匹配前者;
其它的中间件什么的也都有,感觉也玩不出什么花来了。
维护了大概有 4-5 年时间,目前刚更新到 v5 版本,删除了部分无用的功能,个人感觉已经比较稳定了,该有的功能也都有了,性能上也不算太差,兼容官方的 http.Handler 接口。有兴趣的可以试试。
关于性能,我自己做了一个对比数据: https://caixw.github.io/go-http-routers-testing/
同时也提供了一组常用的中间件: https://github.com/issue9/middleware
能够自动生成 OPTIONS 和 HEAD 的请求处理方式;
也支持类似于 discuz 的路由风格,不会假定两个参数之间必须要有一个 / 符号分隔;
能正确区分不同类型的参数,比如 `/posts/{id}` 和 `/posts/{id:\\d+}`,只有无法匹配后者的时候,才会尝试匹配前者;
其它的中间件什么的也都有,感觉也玩不出什么花来了。
维护了大概有 4-5 年时间,目前刚更新到 v5 版本,删除了部分无用的功能,个人感觉已经比较稳定了,该有的功能也都有了,性能上也不算太差,兼容官方的 http.Handler 接口。有兴趣的可以试试。
关于性能,我自己做了一个对比数据: https://caixw.github.io/go-http-routers-testing/
同时也提供了一组常用的中间件: https://github.com/issue9/middleware
3 条回复 • 2021-11-13 15:17:24 +08:00
|
1
BeijingBaby PRO 这类轮子太多了
|
|
2
xnotepad OP @BeijingBaby 没办法,水平有限,只能造一些简单的轮子。
|
|
3
liaohongxing 2021 年 11 月 13 日 楼主的 identicon 一直在用。
|