form表单的enctype属性
来源:互联网 发布:怎么把网络监控头屏蔽 编辑:程序博客网 时间:2024/05/21 10:17
在<form>元素中,enctype属性为编码方式,指定在发送服务器之前应该如何对表单数据进行编码。其编码类型有三种:application/x-www-form-urlencoded、multipart/form-data、text/plain
1.application/x-www-form-urlencoded
默认编码类型,该类型会把表单中的数据编码为键值对,且所有字符会被编码(空格转换为'+'号,特殊符号转换为ASCII HEX值)。
(1).当method属性为GET时,表单中数据转换为'name1=value1&name2=value2&...',并拼接到请求的url后面,以'?'分隔。queryString的URL encode采用的编码字符集取决于浏览器。如表单中有name:'小 明',age:18,采用UTF-8编码,则请求的URL为:...?name=%E5%B0%8F+%E6%98%8E&age=18
(2).当method属性为POST时,数据被添加到Http Body(请求体)中,浏览器会根据网页的ContentType("text/html; charset=UTF-8")中指定的编码进行对表单中的数据进行编码,请求数据同上:name=%E5%B0%8F+%E6%98%8E&age=18
2.multipart/form-data
不对字符编码,此时表单通常采用POST方式提交。该类型对表单以控件为单位进行分割,为每个部分加上Content-Disposition(form-data | file),Content-Type(默认text/plain),name(控件name)等信息,并加上分隔符(边界boundary)。一般用于上传文件,以二进制形式上传到服务器。
3.text/plain
空格转换为 "+" 加号,但不对特殊字符编码。
(1).GET:实际的请求URL中queryString进行URL encode,...?name=%E5%B0%8F+%E6%98%8E&age=18;浏览器地址栏中显示原始表单数据,不对字符进行编码,地址栏显示为:....?name=小+明&age=18。
(2).POST:表单数据添加到请求体中,不对字符进行编码,空格仍然显示为空格,不转为'+'号。
参考文章:
http://www.w3school.com.cn/tags/att_form_enctype.asp
http://www.cnblogs.com/haitao-fan/p/3399018.html
- Form表单的enctype属性
- form表单的enctype属性
- 深入解析form表单的enctype属性
- Form表单标签的Enctype属性
- php中form表单的enctype属性
- html中form表单的enctype属性
- form表单标签的enctype属性
- Form表单的enctype
- <form>表单enctype属性说明
- form表单中的encType属性
- form表单中的encType属性
- html的form表单中Enctype属性的用法
- html的form表单中Enctype属性的用法
- form表单标签的enctype属性的作用
- Form表单标签的Enctype属性的编码格类型
- HTML教程:form表单中Enctype属性的用法
- 【转】HTML中的form表单的两种enctype属性
- jsp form 表单属性enctype的一些注意事项与解决方法
- 将一个项目打成一个jar包,导入到另一个项目中并调用
- HDU 1879 欧拉回路
- hdu6156-(数位dp)
- 学习记录(10)
- scrapy代理ip
- form表单的enctype属性
- 【个人笔记三】ART系统类和方法加载分析
- intellij idea 12/15 报错“非法字符: \65279”
- Python 数据挖掘 常用库
- 剑指offer_栈和队列---包含min函数的栈
- hibernate-配置使用二级缓存(hibernate4以下版本)
- swift oc 混编
- 简单认识TCP/IP协议数据传输流程
- postgresql远程连接问题