HTTP的GET请求参数长度限制问题
之前学习Get和Post的时候依稀记得有这样一些区别:http的get请求的参数长度是有限制的而post请求的参数长度是无限制的,所以当从客户端向服务端发送数据时,如果数据量太大,那么就不要用get方法,而要用post方法。
但是现在重新发现,在HTTP协议里,并没有对GET请求的参数的长度做出任何的限制,事实上,HTTP协议对URL的长度没有做任何的限制,而是服务器和浏览器对URL长度做了限制
下面我们来看看IE浏览器对get请求支持的长度是多少?
然后输入如下URL:
最后打印的url长度是2026,前面的“http://localhost:8080” 长度是21,
所以总长度是2047。
通过这个小实验,发现1、其实http协议对get方法的请求长度并没有限制,只是浏览器和服务器对它限制了而已,2、IE支持get方法请求的最大长度是2047个字符,也并不是网上说的2048个字符。总结一下,搞技术需要脚踏实地,不能人云亦云,必须自己实践了,才是最可信的