本章介绍:
如何用 Gin 框架建立 HTTP [ GET/POST/PUT/DELETE 等方法]效果
用 Postman 工具打看看就可以得到下面结果
安装
首次安装,使用 go get命令获取即可。
$ go get github.com/gin-gonic/gin
更新就是 go get -u。
$ go get -u github.com/gin-gonic/gin
程式码
// 1.启动服务func StartHttpServer(errChan chan error) {gin.SetMode(gin.ReleaseMode)engine := gin.New()initRoutes(engine)go func() { errChan <- engine.Run(:8080) }()}// 2.设定路由组func initRoutes(e *gin.Engine) {root := e.Group("api/v1")userGroup := root.Group("user"){userGroup.GET("", apis.User)userGroup.GET(":name", apis.UserName)userGroup.POST("", apis.PostName)}}// 3. 设定回覆func User(c *gin.Context) {c.JSON(http.StatusOK, "OK") //回覆status 200 & body "OK"}//接受path参数name := c.Param("name")c.JSON(http.StatusOK, fmt.Sprintf("%s,%s", "Hello", name))}//接收 json 内容func PostName(c *gin.Context) {sc := &structs.User{}if err := c.ShouldBindJSON(sc); err != nil {return}c.JSON(http.StatusOK, sc)}type User struct {Name string `json:"name"`Age int `json:"age"`}
Gin延伸
写中间件 [控制每个Url timeout/log 等等行为]套swagger [下一篇]gin.Context 还有 c.Header, c.Query, c.GetRawData() 等等使用方法,取参数非常方便第一次去套用Gin真的觉得很神奇,本章纯快速记录效果,
如有不懂可以再去搜寻关键字,网路上也有很多介绍文章跟使用方法喔