在 上一篇 Golang Gin 实战(二)| 简便的Restful API 实现 文章中,我们留了一个疑问,假如我们有很多用户,我们要为他们一个个注册路由(路径)吗?
路由路径
如下URL:
/users/123
/users/456
/users/23456
以上等等,我们有很多用户,如果我们都一个个为这些用户注册这些路由(URL),那么我们是很难注册完的,而且我们还会有新注册的用户,可见这种办法不行。
我们观察这些路由(URL),发现它们具备一定的规则:前面都是users
,后面是users
的id
。这样我们就可以把这些路由归纳为:
/users/id
这样我们就知道只有id
这部分是可以变的,前面的users
是不变的。可变的id
可以当成我们API服务输入的参数,这样我们就可以通过这个id
参数,获取对应的用户信息,这种URL匹配的模式,我们称之为路由参数。
路由参数
在Gin
中,要实现以上路由参数非常简单:
func main() {
r := gin.Default()
r.GET("/users/:id", func(c *gin.Context) {
id := c.Param("id")
c.String(200, "The user id is %s", id)
})
r.Run(":8080")
}
我们运行如上代码,打开浏览器,输入ht