Gin 路由分组(嵌套)
Gin 路由分组(嵌套)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| package main
import ( "github.com/gin-gonic/gin" "net/http" )
func main() { router := gin.Default()
v1 := router.Group("v1") { server1 := v1.Group("server1") { server1.GET("/user", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v1/server1/user"}) }) server1.GET("/name", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v1/server1/name"}) })
} server2 := v1.Group("server2")
{
server2.GET("/user", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v1/server2/user"}) }) server2.GET("/name", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v1/server2/name"}) }) }
}
v2 := router.Group("v2") { server1 := v2.Group("server1") { server1.GET("/user", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v2/server1/user"}) }) server1.GET("/name", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v2/server1/name"}) }) }
server2 := v2.Group("server2") { server2.GET("/user", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v2/server2/user"}) }) server2.GET("/name", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{"path": "/v2/server2/name"}) }) }
}
err := router.Run(":8080") if err != nil { panic(err) } }
|