讨论/《计算机网络面试突击》 - GET 和 POST 的区别/
《计算机网络面试突击》 - GET 和 POST 的区别
共 8 个回复

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务端响应200,请求成功。

对于POST方式的请求,浏览器会先发送http header给服务端,告诉服务端等一下会有数据过来,服务端响应100 continue,告诉浏览器我已经准备接收数据,浏览器再post发送一个data给服务端,服务端响应200,请求成功。

30

还有就是,get是幂等的,而post是非幂等的,同理put非幂等,delete幂等

3

get 方法产生一个 TCP 数据包,post 方法产生两个(并不是所有的浏览器中都产生两个
Firefox只会产生一个

1

什么叫专业

关于产生「数据包」的问题,更多是的客户端的所做出的优化行为,而不是 GET 方法和 POST 方法本质上的区别。(我觉得如果面试的时候想说的话,可以和面试交流一下)

很详细!感谢老哥

为什么说POST方法会产生两个TCP数据包?这是规定吗?有什么目的或者含义?
我看到有的文章说产生几个数据包是所用的框架决定的,火狐就只发一个包

POST 不一定产生两个数据包,好像只有body特别大的时候才会先发head吧,反正平时写web的时候没考虑过。。