后退!我要开始装逼了。
GET和POST是HTTP协议中的两种请求方式,底层基于TCP/IP,他两最为本质的区别是:GET发送一个TCP数据包;POST发送两个TCP数据包。详细点说就是对于的GET方式,浏览器会把http 头部信息和数据一起发送出去,服务器返回数据响应200。而对于POST,浏览器先发送header,在发送data,服务器响应200,因此POST需要两步,时间上消耗的要多一点,看起来GET比POST更有效。因此Yahoo团队有推荐用GET替换POST来优化网站性能。但是呢在网络环境好的情况下,发一次包跟发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP验证在数据包完整性上有很大的有点,而且并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。