main.go
package main
import (
"root/module2"
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.LoadHTMLGlob("template/**/*")
r.GET("/param/:id", module2.AddParameter)
r.GET("/param2/*id", module2.AddParameter2)
r.GET("/query", module2.GetQueryData)
r.GET("/queryarr", module2.GetQueryArrData)
r.GET("/querymap", module2.GetQueryMapData)
r.Run(":8080")
}
module2.go
package module2
import (
"net/http"
"github.com/gin-gonic/gin"
)
type UserInfo struct {
Id int
Name string
Age int
Address string
}
func AddParameter(c *gin.Context) {
id := c.Param("id")
c.String(http.StatusOK, "结果是:%s", id)
}
func AddParameter2(c *gin.Context) {
id := c.Param("id")
c.String(http.StatusOK, "结果是:%s", id)
}
func GetQueryData(c *gin.Context) {
id := c.Query("id")
name := c.DefaultQuery("name", "kitty")
c.String(http.StatusOK, "id为: %s \n name:: %s", id, name)
}
func GetQueryArrData(c *gin.Context) {
ids := c.QueryArray("ids")
c.String(http.StatusOK, "ids为: %s", ids)
}
func GetQueryMapData(c *gin.Context) {
user := c.QueryMap("user")
c.String(http.StatusOK, "用户信息为: %s", user)
}
运行
vscode 左上角文件file,保存全部
根目录root右键,终端Terminal运行:
go run main.go
浏览器分别输入 :
127.0.0.1:8080/param
127.0.0.1:8080/param?id=567
127.0.0.1:8080/param2
127.0.0.1:8080/param2?id=567
127.0.0.1:8080/query?id=888&name=67
127.0.0.1:8080/queryarr?ids=12,34,56,789
127.0.0.1:8080/querymap?user[name]=秀儿&user[age]=666