Gin学习笔记--使用路由组分类处理请求
在实际的项目开发中,均是模块化开发,同一模块化的功能接口,往往会有相同的接口前缀,
比如说用户有不同的注册,登录等
注册:http:..localhost:8080/user/register
登录:http://localhost:8080/user/login
用户信息:http://localhost:8080/user/info
类似这样的接口,均属于相同模块的功能接口,可以使用路由组进行分类处理
Group
gin框架中可以使用路由组来实现对路由的分类
路由组是router.Group中的一个方法,用于对请求进行分组,
类似逻辑如下:
engine:=gin.Default()
userGroup := engine.Group("/user")
userGroup.GET("/register",registerHandle)
userGroup.GET("/login",loginHandle)
userGroup.GET("/info",infoHandle)
示例代码:
package main import ( "fmt" "github.com/gin-gonic/gin" ) func main() { engine := gin.Default() UserGroup := engine.Group("/user") UserGroup.GET("/login", loginHandle) UserGroup.GET("/register", registerHandle) UserGroup.GET("/info", infoHandle) engine.Run() } func registerHandle(ctx *gin.Context) { fullPath := "用户注册" + ctx.FullPath() fmt.Println(fullPath) ctx.Writer.WriteString(fullPath) } func loginHandle(ctx *gin.Context) { fullPath := "用户登录:" + ctx.FullPath() fmt.Println(fullPath) ctx.Writer.WriteString(fullPath) } func infoHandle(ctx *gin.Context) { fullPath := "用户信息:" + ctx.FullPath() fmt.Println(fullPath) ctx.Writer.WriteString(fullPath) }