0.介紹
gin,是golang的一個(gè)快速http框架浆洗,十分輕巧好用消约。
1.快速上手
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.GET("/test", func(c *gin.Context) {
//c.String(200,"1111")
c.String(200,"test")
})
r.Run() // listen and server on 0.0.0.0:8080
}
默認(rèn)端口是8080逢勾,http://localhost:8080/test,打開鏈接如下邑跪,
可以看到構(gòu)建一個(gè)http請(qǐng)求十分簡單高职,如果是用spring钩乍,估計(jì)還在配置呢,當(dāng)然 spring boot還是配置很快的怔锌,再接下來看看返回json
2.json
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.GET("/test", func(c *gin.Context) {
//c.String(200,"1111")
c.JSON(200, gin.H{
"code":0,
"msg":"ok",
"data":"data",
})
})
r.Run() // listen and server on 0.0.0.0:8080
}
頁面上看到的json是:{"code":0,"data":"data","msg":"ok"}
平常開發(fā)中寥粹,當(dāng)我們想要返回json時(shí)变过,常常是把一個(gè)對(duì)象生成 json,記得特別深在spring boot中直接返回一個(gè)對(duì)象就自動(dòng)幫你生成josn了排作,gin是怎么做的呢牵啦,我們看一下,
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
type Student struct {
Name string
Age int
}
r := gin.Default()
r.GET("/test", func(c *gin.Context) {
//c.String(200,"1111")
c.JSON(200,Student{"la",17})
})
r.Run() // listen and server on 0.0.0.0:8080
}
是不是很簡單妄痪,直接返回一個(gè)結(jié)構(gòu)體就可以了
3.帶參數(shù)的請(qǐng)求
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.GET("/test/:name", func(c *gin.Context) {
name := c.Param("name")
c.String(200, "Hello %s", name)
})
r.Run()
}
拿參數(shù)通過Param()方法哈雏,還有Params()方法可以拿多個(gè)參數(shù)。