通俗易懂的请求方式get与post两者的区别

     相信对于计算机有点了解的都听过get与post这两种的请求方式,但是对于这两种请求方式的具体区别有可能不太清楚,相信大家在网上关于这两种的区别应该一搜索一大把,我也看了下网上其他博客或者简书对于这两种的区别的解释。有好多的说post是用于提交数据用的,而get是从服务器获取数据用的。不能说这两种说法不对,但是太片面,没有根本的解释清楚,其实无论是get还是post都是可以请求数据和提交数据的,主要区别是在于他们的参数携带方式不同,下面我就来说一说,他俩的不同。

     1.get请求方式向服务器请求数据或者是提交数据,所携带的参数是通过拼接在URL之后的,例如http://www.baidu.com/index.html/?username=zhangsan&password=123456

这个URL中?之后的就是要携带的参数。因为服务器对提交URL的长度有限制,所以就导致URL不能拼接的过长,也就是说URL之后不能携带太多的参数,所以就导致get上传的数据量比较小。

     2.post请求方式和get不同之处就在于携带参数的位置不同,get是拼接在URL之后,而post是放在send()之中,通过管道流的方式断点上传的,由于服务器对每次上传数据的大小有限制,但是对于次数没限制,所以post请求通过断点上传可以多次上传,因此提交的数据量就会比较大。


     但是网上有人说post请求比get请求安全,并不然。之所以有人觉得安全可能是由于post提交的参数是放在http头里传输的,我们一般不能直观的看到所以感觉安全,而get请求方式是在URL之后我们能一目了然所以感觉不安全。我想说这是错误的,因为无论是get还是post请求都是可以通过抓包获取到这些参数数据的,对于会抓包的人来说,没一点难度,所以我说这俩其实都不安全。那怎么整才能安全呢?要我说放哪都一样不安全,想要安全就给参数加入加密算法例如:MD5加密算法等。这样即使被人通过抓包抓到也是密文。

     好啦,就先写到这,没什么代码实际操作全是理论,主要是这俩区别都是以理解为主的。理解就好,其实也没那么复杂!

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页