gin开肝 day1开始
这下开始折腾gin咯。gin是go上的一个轻量高效的web框架,有必要学习~
开始
环境是很强的梯子环境,然后这样就可以省的配置什么中国特色环境了。
上来先引入依赖吧
import (
"net/http"
"github.com/gin-gonic/gin"
)
官方的例子
func main() {
r := gin.Default() //实例化一个gin对象server
// /ping是一个url,然后 func(c *gin.Context)是它的处理函数
//函数的参数必须是gin的context,指针类型
r.GET("/ping", func(c *gin.Context) {
//http.StatusOK用的net/http库,一般不用200之类写死
//gin.H 其实是map的别名 type H map[string]any key是string,value就是任意类型
c.JSON(http.StatusOK, gin.H{
"message": "pong",
})
})
r.Run() // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080")
}
进行修改,主要是把函数提出来
func pong(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"message": "pong",
})
}
func main() {
r := gin.Default()
r.GET("/ping", pong)
r.Run(":8083")
// 默认listen and serve on 0.0.0.0:8080 (for windows "localhost:8080"),但是可以":port"改成自定义端口
}
进行对函数pong修改,替换掉gin.H
func pong1(c *gin.Context) {
c.JSON(http.StatusOK,map[string]string{
"message": "pong",
})
}
就是gin.H
可以换成 map[string]string
反正都是map。不过这个太常用,肯定就直接gin.H
多方便,为简洁而生嘛
跑起来
在浏览器 http://127.0.0.1:8083/ping
下出现
{"message":"pong"}