等等 ,可能还有很多,以下是我想从 tcp 的角度来分析一些区别,如果不正确请各位大神指正
无论是 get 和 post 或者其他 httpmethod , 本质上都是都是 tcp 连接,get 和 post 能做的事情其实是一样的,也就是说要给 get 加上 request body 或者给 post 带上 url 参数在技术上是完全行得通的,但要看服务器是否会处理 get 请求的 request body
而有一个重要的区别可能在于大部分浏览器 get 产生一个 tcp 数据包,而 post 产生两个 tcp 包(火狐浏览器在 post 请求是只产生 1 个 tcp 包),过程是首先将 header 发送到服务器,等待服务器响应 100 时,再发送 data
所以在响应时间上,post 要消耗的多一点,但在现在的网络环境下基本上可以忽略,也并不建议使用 get 来替换 post 来提高性能,因为 get 和 post 各有各的用处,配合使用才是最优的方案。
纯小白,有错误请指正