GET和POST的区别是什么

他们本质都是TCP连接,并无区别,但是由于http的规定以及浏览器和服务器的限制,导致他们在应用过程中可能有所不同

  1. get方法的特点

请求数据会附在URL之后(放在请求行中,以 ?分割URL和传输数据,多个参数用 & 连接)

get是会被浏览器主动缓存的,如果下一次传输的数据相同,那么就会返回缓存中的内容,可以更快的展示数据

get方法的UR一般都有长度限制,但是需要注意的是http协议中并未规定get请求的长度。这个长度限制主要是由浏览器和web服务器决定的,并且各个浏览器对长度限制各不相同

get方法只产生一个TCP数据包,浏览器会把请求头和请求数据一并发送出去,服务器响应200 ok(返回数据)

  1. post方法的特点

根据http规范,post可能改变服务器上的资源的请求(点赞就是post请求),因为有可能修改服务器上的资源,所以不符合安全性和幂等性

因为post方法是放在请求数据的,所以它的请求信息是没有长度限制的

post方法会产生两个TCP数据包,浏览器会先将请求头发送给服务器,待服务器返回100 continue,浏览器再发送请求数据,服务器响应 200 ok(返回数据),这个看起来get比post快一些,但是实际上,在网络状况良好的情况下,他们的传输速度基本相同。

赞(0)
版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
文章名称:GET和POST的区别是什么
文章链接:https://www.yihuo.tech/ask/what-is-the-difference-between-get-and-post/
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
广告位,电脑和手机可分别设置,可放任何广告代码

一个专注于技术系列文章的技术分享网站