http1.0和http1.1的主要变化:
- 首先是提出了长连接,http请求可以在一次tcp连接中不断发送。
- 然后是http1.1支持只发送header而不发送body。原因是先用header判断能否成功,再发数据,节约带宽,事实上,post请求默认就是这样做的。
- http1.1的host字段。由于虚拟主机可以支持多个域名,所以一般将域名解析后得到host。
http1.0和http2.0的区别
- http支持多路复用,同一个连接可以并发处理多个请求,方法是把http数据包拆为多个帧,并发有序的发送,根据序号在另一端进行重组,而不需要一个个http请求顺序到达。
- http2.0支持服务端推送,就是服务端在http请求到达后,除了返回数据之外,还推送了额外的内容给客户端。
- HTTP2.0压缩了请求头,同时基本单位是二进制帧流,这样的数据占用空间更少。
- http2.0只适用于https场景,因为其在http和tcp中间加了一层ssl层。