浅析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获取网络上文件
Oct 09 PHP
PHP的栏目导航程序
Oct 09 PHP
PHP与SQL注入攻击[一]
Apr 17 PHP
php adodb连接带密码access数据库实例,测试成功
May 14 PHP
php数组一对一替换实现代码
Aug 31 PHP
PHP中数据库单例模式的实现代码分享
Aug 21 PHP
PHP基于文件存储实现缓存的方法
Jul 20 PHP
PHP6新特性分析
Mar 03 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
PHP实现数据四舍五入的方法小结【4种方法】
Mar 27 PHP
php快速导入大量数据的实例方法
Sep 23 PHP
PHP之多条件混合筛选功能的实现方法
Oct 09 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
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
php parse_str() 函数的定义和用法
2016/05/23 PHP
基于laravel belongsTo使用详解
2019/10/18 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
犀利的js 函数集合
2009/06/11 Javascript
JavaScript 对象的属性和方法4种不同的类型
2010/03/19 Javascript
JS画5角星方法介绍
2013/09/17 Javascript
使用jQuery判断IE浏览器版本的代码
2014/06/14 Javascript
HTML5实现留言和回复页面样式
2015/07/22 Javascript
移动端界面的适配
2017/01/11 Javascript
vue数据控制视图源码解析
2018/03/28 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
2019/02/20 Javascript
用JavaScript实现贪吃蛇游戏
2020/10/23 Javascript
[54:45]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 Optic vs OG
2018/04/02 DOTA
Python程序设计入门(2)变量类型简介
2014/06/16 Python
Python实现控制台输入密码的方法
2015/05/29 Python
Python实现的Excel文件读写类
2015/07/30 Python
深入理解Python 关于supper 的 用法和原理
2018/02/28 Python
python使用opencv驱动摄像头的方法
2018/08/03 Python
Python线上环境使用日志的及配置文件
2019/07/28 Python
pytorch索引查找 index_select的例子
2019/08/18 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
在spyder IPython console中,运行代码加入参数的实例
2020/04/20 Python
Python参数传递机制传值和传引用原理详解
2020/05/22 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
html5 localStorage本地存储_动力节点Java学院整理
2017/07/06 HTML / CSS
行政助理岗位职责范文
2013/12/03 职场文书
大学生的网络创业计划书
2013/12/26 职场文书
甜品店创业计划书
2014/08/14 职场文书
单位委托书格式范本
2014/09/29 职场文书
初中中等生评语
2014/12/29 职场文书
教师听课评语大全
2014/12/31 职场文书
心术观后感
2015/06/11 职场文书
Go 中的空白标识符下划线
2022/03/25 Golang
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
2022/04/29 Servers