各类web开发语言中,各个页面之间基本都会进行数据的传递,web开发里面比较经常使用的数据传递方式有get post,一直以来我都只知道get传递的数据量要比post传递的数据量要少,因此传递大数据量仍是要用post,可是 get post 这两种方式最大能传递多少数据呢?一直没搞清楚。php
今天因为工做的须要,还必须得把这个问题搞明白一下了,下面就说说GET与POST传递数据的最大长度可以达到多少吧。web
get 是经过URL提交数据,所以GET可提交的数据量就跟URL所能达到的最大长度有直接关系。不少文章都说GET方式提交的数据最多只能是1024字节,而实际上,URL不存在参数上限的问题,HTTP协议规范也没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35字节)。对于其余浏览器,如FireFox,Netscape等,则没有长度限制,这个时候其限制取决于服务器的操做系统。即若是url太长,服务器可能会由于安全方面的设置从而拒绝请求或者发生不完整的数据请求。浏览器
post 理论上讲是没有大小限制的,HTTP协议规范也没有进行大小限制,但实际上post所能传递的数据量大小取决于服务器的设置和内存大小。由于咱们通常post的数据量不多超过MB的,因此咱们不多能感受的到post的数据量限制,但实际中若是你上传文件的过程当中可能会发现这样一个问题,即上传个头比较大的文件到服务器时候,可能上传不上去,以php语言来讲,查缘由的时候你也许会看到有说PHP上传文件涉及到的参数PHP默认的上传有限定,通常这个值是2MB,更改这个值须要更改php.conf的post_max_size这个值。这就很明白的说明了这个问题了。http://www.weixinmi.net/安全