[Go] 使用 Gin 框架快速建立http服务

本章介绍:

如何用 Gin 框架建立 HTTP [ GET/POST/PUT/DELETE 等方法]

效果

用 Postman 工具打看看就可以得到下面结果

SEND [method url ]RESPONSE [status body ]GET http://localhost:8080/api/v1/user200 , OKGET http://localhost:8080/api/v1/user/May200 ,"Hello,May"POST http://localhost:8080/api/v1/user {"name": "user1","age": 33}200 , {"name": "user1","age": 33}

安装

首次安装,使用 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真的觉得很神奇,本章纯快速记录效果,
如有不懂可以再去搜寻关键字,网路上也有很多介绍文章跟使用方法喔


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章