多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 1、获取url上的参数,?后面的 :[http://127.0.0.1:8090/user/?id=111](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](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") ```