介绍
本文主要介绍gin框架中的 路由组, 以及相关案例和测试结果。
案例
源码:
package main
import "github.com/gin-gonic/gin"
func loginEndpoint(c *gin.Context) {
c.String(200, c.Request.URL.String())
}
func submitEndpoint(c *gin.Context) {
c.String(200, c.Request.URL.String())
}
func readEndpoint(c *gin.Context) {
c.String(200, c.Request.URL.String())
}
func main() {
router := gin.Default()
// 简单的路由组: v1
v1 := router.Group("/v1")
{
v1.GET("/login", loginEndpoint)
v1.GET("/submit", submitEndpoint)
v1.GET("/read", readEndpoint)
}
// 简单的路由组: v2
v2 := router.Group("/v2")
{
v2.GET("/login", loginEndpoint)
v2.GET("/submit", submitEndpoint)
v2.GET("/read", readEndpoint)
}
router.Run(":8080")
}
测试:
$ curl http://127.0.0.1:8080/v1/login
/v1/login
$ curl http://127.0.0.1:8080/v1/submit
/v1/submit
$ curl http://127.0.0.1:8080/v1/read
/v1/read
$ curl http://127.0.0.1:8080/v2/login
/v2/login
$ curl http://127.0.0.1:8080/v2/submit
/v2/submit
$ curl http://127.0.0.1:8080/v2/read
/v2/read