- GET发送的数据被存储在URL中,POST是放在Request body中传递
- GET发送数据时大小受限,POST发送数据时大小无限制。浏览器通常都会限制URL长度在2K个字节,而大多数服务器最多处理64K大小的URL,超过的部分不予处理
- GET产生的URL地址可以被标记书签,而POST不可以
- GET在浏览器回退时是无害的,而POST会再次提交请求
- GET请求只能进行URL编码,而POST支持多种编码方式
- GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留
- GET请求会被浏览器主动cache,而POST不会,除非手动设置
- 对参数的数据类型,GET只接受ASCII字符,而POST没有限制
- 因为URL对所有人可见,所以GET安全性比较差。发送敏感信息的时候不建议使用GET
- GET产生一个数据包,而POST产生两个数据包。
- GET方式请求,浏览器会把http header和data一并发出,服务器接收到之后响应200(返回数据)
- POST方式请求,浏览器会先发送header,服务器接收后返回100(continue),浏览器再发送data,服务器接收后再返回200(返回数据)
- 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。但并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次
Http中GET和POST的区别
最新推荐文章于 2020-12-10 23:49:46 发布