beego 获取前端请求参数数据

获取url上的参数,?后面的 :http://127.0.0.1:8090/user/?id=111

GetString获取数据:
  路由:

beego.Router("/user", &controllers_user.UserController{})

访问路径:http://127.0.0.1:8090/user/?id=111
获取数据:

        id := c.Input().Get("id")
        id2 := c.GetString("id")


      这种方式不行:
          id3 := c.Ctx.Input.Param(":id")

2、获取url上的参数,/:id的 :

http://127.0.0.1:8090/user/111

路由:/user/?:id:int

beego.Router("/user/?:id:int", &controllers_user.UserController{})

访问路径:http://127.0.0.1:8090/user/111
获取数据:

  id := c.GetString(":id")
  id2 := c.Ctx.Input.Param(":id")


这种方式不行了:
id3 := c.Input().Get(":id")

3、获取请求信息:

this.Ctx.Request                所有的请求信息
this.Ctx.Request.Header         请求头
this.Ctx.Request.Host           请求的主机
this.Ctx.Request.Method         请求的方法

4、获取form表单数据:


GetString(key string) string
GetStrings(key string) []string
GetInt(key string) (int64, error)         --返回两个值
GetBool(key string) (bool, error)         --返回两个值
GetFloat(key string) (float64, error)     --返回两个值

​​
举例:前端form表单:

<form action="/user" method="post">
{{ .xsrfdata }}
    年龄1:<input type="text" name="age"><br>
    姓名1:<input type="text" name="name"><br>
    地址:<input type="text" name="addr"><br>
    姓名2:<input type="text" name="name"><br>
    年龄2:<input type="text" name="age"><br>
    是:<input type="radio" name="is_true" value="true">
    否:<input type="radio" name="is_true" value="false"><br>
    价格:<input type="text" name="price"><br>
    <input type="submit" value="提交"><br>
</form>

​获取数据:​

name := c.Input().Get("name")  获取的是第一个name的值
names := c.GetStrings("name")   获取所有的name的值,是个数组
age := c.Input().Get("age")
age,_ := c.GetInt64("age")
is_true , _ := c.GetBool("is_true")
price , _ := c.GetFloat("price")
posted @ 2023-11-07 15:36  星云惊蛰  阅读(183)  评论(0)    收藏  举报