表单的提交方式

form提交主要有下面3种方式:
application/x-www-form-urlencoded: 窗体数据被编码为名称/值对。这是标准的编码格式。 这是默认的方式
multipart/form-data: 窗体数据被编码为一条消息,页上的每一个控件对应消息中的一个部分。 二进制数据传输方式,主要用于上传文件

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

表面现像上面看看GET和POST的区别 浏览器

 1.GET请求的数据会附在URL以后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。若是数据是英文字母/数字,原样发送,若是是空格,转换为+,若是是中文/其余字符,则直接把字符串用BASE64加密,得出如:%E4%BD%A0%E5%A5%BD,其中%XX中的XX为该符号以16进制表示的ASCII。 缓存

  POST把提交的数据则放置在是HTTP包的包体中。 安全

2 ."GET方式提交的数据最多只能是1024字节,理论上POST没有限制,可传较大量的数据:

(1).首先是"GET方式提交的数据最多只能是1024字节",由于GET是经过URL提交数据,那么GET可提交的数据量就跟URL的长度有直接关系了。而实际上,URL不存在参数上限的问题HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35)。对于其余浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操做系统的支持。 服务器

4.POST的安全性要比GET的安全性高。注意:这里所说的安全性和上面GET提到的“安全”不是同个概念。上面“安全”的含义仅仅是不做数据修改,而这里安全的含义是真正的Security的含义,好比:经过GET提交数据,用户名和密码将明文出如今URL上,由于(1)登陆页面有可能被浏览器缓存,(2)其余人查看浏览器的历史纪录,那么别人就能够拿到你的帐号和密码了,除此以外,使用GET提交数据还可能会形成Cross-site request forgery攻击。 app

总结一下,Get是向服务器发索取数据的一种请求,而Post是向服务器提交数据的一种请求,在FORM(表单)中,Method默认为"GET",实质上,GET和POST只是发送机制不一样,并非一个取一个发!
ui

content-type:http://tool.oschina.net/commons 编码

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

该META标签订义了HTML页面所使用的字符集为GB2132,就是国标汉字码。若是将其中的“charset=GB2312”替换成“BIG5”,则该页面所用的字符集就是繁体中文Big5码。当你浏览一些国外的站点时,IE浏览器会提示你要正确显示该页面须要下载xx语支持。这个功能就是经过读取HTML页面META标签的Content-Type属性而得知须要使用哪一种字符集显示该页面的。若是系统里没有装相应的字符集,则IE就提示下载。其余的语言也对应不一样的charset,好比日文的字符集是“iso-2022-jp ”,韩文的是“ks_c_5601”。 加密

相关文章
相关标签/搜索