示例(github issues:https://github.com/gin-gonic/gin/issues/388)
```
r.GET("/teachers/list", func (c *gin.Context){})
r.GET("/teachers/:id/profile", func (c *gin.Context){})
```
restful风格接口碰到了这个问题,去github上找到了一个2015年的issues,发生很激烈的争论(开发者因为觉得会影响性能而不想添加这个功能),过去这么久gin有没有解决上面这个通配符问题?
老哥,restful风格接口
列表:
`r.GET("/teachers", func (c *gin.Context){})`
详情:
`r.GET("/teachers/:id", func (c *gin.Context){})`
如果非要用list通常我这样
`r.GET("/teacher/:id/profile", func (c *gin.Context){})`
就不会有问题了
我觉得开发者是对的,如果定义了:id还要去判断teachers/后面是不是id就很多余
#4
更多评论
不知道你说的是什么问题,感觉是路由匹配优先级问题。
你可以试试,但是我感觉没有解决的,gin使用的httprouter,也没法扩展重写,去年是有问题的,今年httprouter没有更新,所以这个问题应该存在的。
这个是我自己写的路由,各种问题都解决了,高性能高扩展低复杂度。
https://github.com/eudore/eudore/blob/master/docs/frame/router_zh.md#routerradix
#1