浅析application/x-www-form-urlencoded和multipart/form-data的区别


Posted in PHP onJune 22, 2014

在Form元素的语法中,EncType表明提交数据的格式

用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型。

下边是说明:

application/x-www-form-urlencoded : 窗体数据被编码为名称/值对。这是标准的编码格式。

multipart/form-data : 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。

text/plain : 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。

补充

form的enctype属性为编码方式,常用有两种: application/x-www-form-urlencoded 和 multipart/form-data , 默认为application/x-www-form-urlencoded 。

当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2...),然后把这个字串append到url后面,用?分割,加载这个新的url。

当action为post时候,浏览器把form数据封装到http body中,然后发送到server。

如果没有 type=file 的控件,用默认的 application/x-www-form-urlencoded 就可以了。

但是如果有 type=file 的话,就要用到 multipart/form-data 了。浏览器会把整个表单以控件为单位分割,并为每个部分加上Content-Disposition(form-data或者file)、Content-Type(默认为text/plain)、name(控件name)等信息,并加上分割符(boundary)。

PHP 相关文章推荐
特转载一高手总结PHP学习资源和链接.
Dec 05 PHP
PHP引用符&的用法详细解析
Aug 22 PHP
php while循环得到循环次数
Oct 26 PHP
destoon实现资讯信息前面调用它所属分类的方法
Jul 15 PHP
php实现mysql事务处理的方法
Dec 25 PHP
php中session与cookie的比较
Jan 27 PHP
php查看网页源代码的方法
Mar 13 PHP
php简单实现多字节字符串翻转的方法
Mar 31 PHP
php实现面包屑导航例子分享
Dec 19 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
PHP文件后缀不强制为.php方法
Mar 31 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
PHP延迟静态绑定示例分享
Jun 22 #PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
Jun 22 #PHP
解决cPanel无法安装php5.2.17
Jun 22 #PHP
destoon设置自定义搜索的方法
Jun 21 #PHP
destoon后台网站设置变成空白的解决方法
Jun 21 #PHP
destoon常用的安全设置概述
Jun 21 #PHP
destoon安全设置中需要设置可写权限的目录及文件
Jun 21 #PHP
You might like
总结PHP中数值计算的注意事项
2016/08/14 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
2016/09/11 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
分享别人写的一个小型js框架
2007/08/13 Javascript
IE浏览器兼容Firefox的JS脚本的代码
2008/10/23 Javascript
jQuery EasyUI API 中文文档 搜索框
2011/09/29 Javascript
同域jQuery(跨)iframe操作DOM(实例讲解)
2013/12/19 Javascript
微信小程序 SocketIO 实例讲解
2016/10/13 Javascript
Javascript 闭包详解及实例代码
2016/11/30 Javascript
jQuery阻止移动端遮罩层后页面滚动
2017/03/15 Javascript
jQuery实现多张图片上传预览(不经过后端处理)
2017/04/29 jQuery
vue2 前端搜索实现示例
2018/02/26 Javascript
JS的Ajax与后端交互数据的实例
2018/08/08 Javascript
在vue中使用G2图表的示例代码
2019/03/19 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
js Array.slice的8种不同用法示例
2019/07/10 Javascript
JavaScript设计模式之策略模式实现原理详解
2020/05/29 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
[03:56]还原FTP电影首映式 DOTA2群星拼出遗迹世界
2014/03/26 DOTA
Python爬取Coursera课程资源的详细过程
2014/11/04 Python
编写Python的web框架中的Model的教程
2015/04/29 Python
python模拟Django框架实例
2016/05/17 Python
浅谈python类属性的访问、设置和删除方法
2016/07/25 Python
python生成词云的实现方法(推荐)
2017/06/13 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
2019/03/01 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
SKECHERS官方旗舰店:美国舒适运动休闲品牌
2017/12/22 全球购物
吉尔德利巧克力公司:Ghirardelli Chocolate Company
2019/03/27 全球购物
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
数据库测试通常都包括哪些方面
2015/11/30 面试题
技术员个人工作总结
2015/03/03 职场文书
高中班长竞选稿
2015/11/20 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
springboot 多数据源配置不生效遇到的坑及解决
2021/11/17 Java/Android
python和Appium的移动端多设备自动化测试框架
2022/04/26 Python