form表单文件上传_multipart/form-data文件上传
form表单的enctype属性:规定了form表单数据在发送到服务器时候的编码方式
application/x-www-form-urlencoded:默认编码方式
multipart/form-data:指定传输数据为二进制数据,例如图片、mp3、文件
text/plain:纯文本的传输。空格转换为“+”,但不支持特殊字符编码。
多部件请求体
POST / HTTP/1.1
Host: localhost
cache-control: no-cache
Postman-Token: aa6340a3-4e9b-448c-be76-e6de91258d81
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="/Users/zhuyx/Documents/test.png
Content-Disposition: form-data; name="token"
text
------WebKitFormBoundary7MA4YWxkTrZu0gW--
--------------------- postman body支持类型
1、form-data
- http请求中的multipart/form-data,会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。
- 既可以上传键值对,也可以上传文件
- 当上传的字段是文件,会使用content-type表明文件类型;content-disposition说明字段的一些信息。
- 由于有boundary隔离,所以multipart/form-data既可以上传文件,也可以上传键值对。
2、application/x-www-from-urlencoded
- 会将表单内的数据转换为键值对。
3、raw
- 可以上传任意格式的文本,可以上传text、json、xml、html等
4、binary/application/octet-stream
- 只可以上传二进制数据,通常用来上传文件,一次只能上传一个文件。
5、multipart/form-data与application/x-www-from-urlencoded区别
- multipart/form-data:既可以上传二进制数据,也可以上传表单键值对,只是最后会转化为一条信息
- x-www-from-urlencoded:只能上传键值对,并且键值对都是间隔分开的。
作者:AmyZYX
出处:http://www.cnblogs.com/amyzhu/
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!