今天小编跟大家讲解下有关HTTP中POST方法和GET方法的区别 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关HTTP中POST方法和GET方法的区别 的相关资料,希望小伙伴们看了有所帮助。
1、get 在浏览器回退时是无害的 而post会再次提交请求;
2、get 产生的URL地址可以被收藏 而post不可以;
3、get请求会被浏览器主动缓存 而post不会主动缓存 除非手动设置;
4、get请求参数会被完整的保留在浏览器 历史记录中 而post不会;
5、get请求在url中传送的参数是有长度限制的 而post没有限制;
6、get请求只能进行URL编码 而post支持多种编码方式;
7、get请求的参数通过URL传递 而post 放在Request body中;
8、对参数的数据类型 get只接受ASCII字符 而post 没有限制;
9、get比post更不安全 因为get请求的参数直接显示在URL上 明文的方式传递参数数据 所以不能用get方法传递敏感信息;
10、get是从服务器上获取数据,post是向服务器传送数据;
11、get方法传递的数据量较小 最大不超过2KB(因为受URL长度限制) post方法传递的数据量较大 一般不受限制;
12、get方法只会产生一个TCP数据包 浏览器会把Header和Data一并发送出去 服务器响应200(OK) 并回传相应的数据。
而post方法会产生两个TCP数据包 浏览器会先将Header发送出去 服务器响应100(Continue)后 浏览器再发送Data 服务器响应200(OK) 并回传相应的数据。
那么为什么post方式那么好 还会使用get方法呢 因为get方法虽然安全性低 但是效率更高 而post安全性高 效率低。
来源:爱蒂网