获取url里的参数:http://localhost:8080/p1?a=%E3%81%82%E6%9D%B1%E4%BA%AC
获取post请求表单的参数:
获取restful参数:/p2/:id/update/:name
package main
import (
"github.com/gin-gonic/gin"
"html/template"
"log"
"net/http"
)
func main() {
mainGin()
}
func mainGin() {
r := gin.Default()
//处理url请求
r.Any("/p1", func(c *gin.Context) {
switch c.Request.Method {
case "GET":
a1 := c.Query("a")
a2 := c.DefaultQuery("a", "Default A")
a3, ok := c.GetQuery("a")
log.Println("\na1=", a1, "\na2=", a2, "\na3=", a3, "\nok=", ok)
log.Println("\na1=", len(a1), "\na2=", len(a2), "\na3=", len(a3))
log.Println("\na1=", a1 == "", "\na3=", a3 == "")
case "POST":
a1 := c.PostForm("a")
a2 := c.DefaultPostForm("a", "Default A")
a3, ok := c.GetPostForm("a")
log.Println("\na1=", a1, "\na2=", a2, "\na3=", a3, "\nok=", ok)
log.Println("\na1=", len(a1), "\na2=", len(a2), "\na3=", len(a3))
log.Println("\na1=", a1 == "", "\na3=", a3 == "")
default:
log.Println("c.Request.Method=", c.Request.Method)
}
c.JSON(http.StatusOK, nil)
})
///p2//update/a ok
///p2/3/update// ng
r.GET("/p2/:id/update/:name", func(c *gin.Context) {
a1 := c.Param("id")
a2 := c.Param("name")
log.Println("\na1=", a1, "\na2=", a2)
log.Println("\na1=", len(a1), "\na2=", len(a2))
log.Println("\na1=", a1 == "", "\na2=", a2 == "")
c.JSON(http.StatusOK, nil)
})