form-data
http请求中的multipart/form-data,他会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的字段是文件的时候,会有Content-type表示文件类型;
不对字符编码!有boundary隔离,所以multipart/form-data 既可以上传文件,可以上传键值对。
那么到底什么是多部分媒体类型?
MIME中的 multipart 表示报文中包含多个报文,它们合在一起作为单一的复杂报文发送。每一部分是独立的,有各自的描述其内容的集;
不同部分之间用分界字符串连接在一起boundary~
多部分表格提交
当提交填写的HTTP表格时,变长的文本字段和上传的对象都作为 多部分主体(multipart Body )里面独立的部分发送,这样在表格就可以填写各种不同类型和长度的值。
HTTP使用Content-Type:multipart/form-data 或者 Content-Type:multipart/mixed这样的首部以及多部分主体来发送这种请求:
Content-Type:multipart/form-data;boundary=[asdasdsd]
boundary就是分割body(主体)中不同部分所用的字符串。
<form action="http://server.com/cgi" enctype="multipart/form-data" method="post">
<p>xxx</p>
<input type="submit" value="Send"></form>
我们的用户代理可能会得到下面这样的数据&#