提交数据get和post的区别

来源:互联网 发布:电信网络代理免费 编辑:程序博客网 时间:2024/05/22 00:48

刚开始学习servlet和jsp的时候都是只知道有get和post的方法可以提交数据,但是他们两个的区别还是不懂,翻过很多书都对这两个的区别没有讲的很详细。根据我个人的总结,他们的区别主要有以下几个方面区别:

      一:从安全性来看,get方法的安全性比post的安全性差,因为get只有一个流,参数附加在url后,地址行显示要传送的信息。而post的参数是通过另外的流传递的,不通过url,因此安全性比较高。

        二:从提交的内容大小来看,get方法提交的数据要小于post方法提交的数据的大小,因为get传递的参数是附加在url上,因此大小个数有严格的限制,一般不能大于2k。而post方法传递数据时不通过url的,因此传递的数据量比较大,一般不限时大小,但是在实际的编程中建议不要大于64k。

       三:从响应速度来看,get方法响应的速度要快于post方法,因为get请求服务器是立即请求,而post请求可能形成一个队列请求。

        四:传输数据的类型来看,get只能传输出字符串,但是post可以传输二进制的数。例如文件上传。

         五:从服务器接收方式来看,服务器随机接收get方法的数据,一旦断电或者中断传输等等原因,服务器 也不知道数据是否发送完毕。而post方法,服务器先接受数据信息的长度,然后再接受数据,这样服务器就知道数据接受是否成功并做相应的处理。

       六:表单form框里面的method为get时,执行的是service中doGet方法;为post时,执行的是service中doPost方法。

     在学习过程中我总结了以上六点,在日后的学习中希望能总结到更多。

0 0
原创粉丝点击