1234567891011121314151617181920212223242526272829303132333435363738 |
- 一:提取参数
- 1、从路由中提取参数(c.Param("key"))
- r.GET("/user/:id", func(c *gin.Context) {
- id := c.Param("id")
- c.String(http.StatusOK, "id=%s", id)
- })
- 2、从url中提取参数 - c.Query("key")
- r.GET("/user", func(c *gin.Context) {
- name := c.Query("name")
- age := c.Query("age")
- c.String(http.StatusOK, "name=%s, age=%s", name, age)
- })
- 3、从post提交中提取参数 - c.PostParam("key")
- 需要注意的是,在使用 c.PostForm() 和 c.DefaultPostForm() 方法获取客户端 POST 请求参数时,需要在处理请求之前调用 c.Request.ParseForm() 方法,以便解析表单参数。例如:
- r.POST("/user", func(c *gin.Context) {
- c.Request.ParseForm()//特别注意
- name := c.PostForm("name")
- age := c.PostForm("age")
- c.String(http.StatusOK, "name=%s, age=%s", name, age)
- })
- 4、用ShouldBindXX将请求参数(body)映射到结构上
- c.SouldBind
- c.SouldBindJson
- c.SouldBindXml
- c.SouldBindForm
- 。。。。。。
- 5、其他方法
- 除了上述方法外,Gin 框架还提供了一些其他方法来处理客户端提交的参数,例如:
- c.GetHeader():获取客户端提交的请求头信息。
- c.GetRawData():获取客户端提交的请求体信息(原始数据)。
- c.Request.FormValue():获取客户端提交的表单参数值。
- c.Request.PostFormValue():获取客户端提交的 POST 请求参数值。
|