码迷,mamicode.com
首页 > 移动开发 > 详细

POST 请求中 multipart/form-data、 application/x-www-form-urlencoded 的区别

时间:2018-11-27 13:07:44      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:www   water   传输   blank   ==   tip   fill   等于   提交数据   

以 Postman 为工具来看一下这两个编码类型的数据格式,假设我们需要传输的数据为

{
    "name": "test",
    "age": 18
}
  • multipart/form-data
    技术分享图片

我们上传文件的时候通常会选择这个格式,可以看到 Content-Type 一行有个 boundary,这个 boundary 是一个分隔符,可以把它看成 get 请求中的 & ,这个分隔符通常是浏览器生成。由于这个分隔符的存在,我们上传的每个文件数据都会被分隔开,所以可以上传多个文件。

  • application/x-www-form-urlencoded

技术分享图片

可以看到键值对被 & 分隔

浏览器的原生 <form> 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据。所以如果我们要使用表单上传文件,必须让 <form> 表单的 enctype 等于 multipart/form-data。

对于一些如 application/json、text/plain 等这些编码,浏览器会原封不动的将数据提交,在 Postman 中的选项是 raw。

原文链接https://blog.csdn.net/zsensei/article/details/80043764

POST 请求中 multipart/form-data、 application/x-www-form-urlencoded 的区别

标签:www   water   传输   blank   ==   tip   fill   等于   提交数据   

原文地址:https://www.cnblogs.com/xiu68/p/10025707.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!