Get和Post请求区别和使用场景

Get和Post请求区别和使用场景GET 和 POST 是什么 答 HTTP 协议中的两种发送请求的方法 HTTP 是什么 答 HTTP 是基于 TCP IP 的关于数据如何在万维网中如何通信的协议 Get 请求和 Post 请求区别 1 post 更安全 不会作为 url 的一部分 不会被缓存 保存在服务器日志 以及浏览器浏览记录中 2 post 发送的数据更大 get 有 url 长度限制 3 post 能发送更多的数据类型 get 只

GET和POST是什么?

答:HTTP协议中的两种发送请求的方法。

HTTP是什么?

答:HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。

Get请求和Post请求区别:

总结:GET把参数包含在URL中,POST通过request body传递参数,所以Post更加安全一些;Get的效率比Post高一些,但是Get请求发送的参数是有限的,而Post请求是没有限制的(理论上来讲)。

使用场景:

  1. 在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;
  2. Get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;

区别表现如下:

  1. Get是从服务器上获取数据,Post是向服务器传送数据。
  2. Get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。Post是通过HTTP Post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
  3. 对于Get方式,服务器端用Request.QueryString获取变量的值,对于Post方式,服务器端用Request.Form获取提交的数据。
  4. Get传送的数据量较小,不能大于2KB。Post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。 5. Get安全性非常低,Post安全性较高。但是执行效率却比Post方法好。 

Get和Post还有一个重大区别:

Get产生一个TCP数据包;Post产生两个TCP数据包。

对于Get方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据),而对于Post,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

比如说:Get只需要汽车跑一趟就把货送到了,而Post得跑两趟,第一趟,先去和服务器打个招呼“嗨,我等下要送一批货来,你们打开门迎接我”,然后再回头把货送过去。由于Post需要两步,时间上消耗的要多一点,所以Get比Post更有效率。

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220155.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午9:06
下一篇 2026年3月17日 下午9:07


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号