Go 网络编程:请求处理、响应发送与 Cookie 使用
1. 请求处理
在处理请求时,我们会遇到不同类型的键值对,如 URL 查询键值对和表单键值对。PostForm 字段仅支持application/x-www-form-urlencoded类型,若要获取多部分表单的键值对,需使用 MultipartForm 字段。
1.1 MultipartForm
使用 MultipartForm 时,需调用ParseMultipartForm方法,而非ParseForm方法。示例代码如下:
r.ParseMultipartForm(1024) fmt.Fprintln(w, r.MultipartForm)这里要指定从多部分表单中提取的数据大小(以字节为单位)。执行上述代码后,输出结果如下:
&{map[hello:[sau sheong] post:[456]] map[]}可以看到,此时得到的是表单键值对,而非 URL 键值对,因为 MultipartForm 字段仅包含表单键值对。返回值是一个包含两个映射的结构体,第一个映射的键为字符串,值为字符串切片;第二个映射为空,因为它是一个键为字符串、值为文件的映射。
此外,Request 还有一些方法可更方便地访问键值对:
-FormVa