Go语言 获取get、post参数
先看官方文档 对 Form 、PostForm、MutipartForm 注释讲解
// Form是解析好的表单数据,包括URL字段的query参数和POST或PUT的表单数据。
// 本字段只有在调用ParseForm后才有效。在客户端,会忽略请求中的本字段而使用Body替代。
Form url.Values
// PostForm是解析好的POST或PUT的表单数据。
// 本字段只有在调用ParseForm后才有效。在客户端,会忽略请求中的本字段而使用Body 替代。
PostForm url.Values
// MultipartForm是解析好的多部件表单,包括上传的文件。
// 本字段只有在调用ParseMultipartForm后才有效。
// 在客户端,会忽略请求中的本字段而使用Body替代。
MultipartForm *multipart.Form
一、获取GET参数
query := req.URL.Query() get_act := query["act"][0] fmt.Println(get_act)
二、获取POST参数
2.1 获取单个POST字段值
post_act := req.PostFormValue("act")
fmt.Println(post_act)
2.2 获取多个POST字段值
如果我们在提交的时候,有两个一样input-name怎么办呢?如下的html代码
<form method="POST" action="login?act=in"> <input type="text" name="username" class="text" /> <input type="text" name="username" class="text" /> <input type="submit" name="login_button" value="登录"> </form>
这时候就要把post传输的参数当成数组,通过PostFormValue就只能获得第一个input的内容。怎么能两个都获取到呢?
post_act := req.PostForm["username"] fmt.Println(post_act)

浙公网安备 33010602011771号