在本章中,我们将深入研究使用Gin框架的高级路由和URL参数。我们将介绍如何创建和使用路由组、应用中间件、提取路径参数、处理查询字符串、处理静态文件以及使用HTML模板。
路由分组
为什么要使用路由组?
使用路由组有助于保持代码结构整洁有序。当路由被逻辑分组时,它变得更容易管理和扩展应用程序。例如,您可能有一组与用户管理相关的路由,另一组与产品管理相关的路由。
创建和使用路由分组
路由分组能够组织路由并应用通用中间件。这对于对共享公共路径前缀或需要相同中间件的路由进行分组特别有用。
示例:创建路由分组
在这个例子中,我们为API路由创建分组:
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
// Group: /api
api := r.Group("/api")
{
api.GET("/users", getUsers)
api.GET("/products", getProducts)
}
r.Run() // listen and serve on 0.0.0.0:8080
}
func getUsers(c *gin.Context) {
c.JSON(200, gin.H{
"message": "Fetching all users",
})
}
func getProducts(c *gin.Context) {
c.JSON(200, gin.H{
"message": "Fetching all products",
})
}