# http1.1 与 http1.0 的区别

  • 连接方面
    http1.0 不是持久连接,每次发送请求都需要建立一个连接;http1.1 是持久连接,多次请求服用一个 tcp 连接。
  • 缓存方面
    http1.0 的缓存主要是使用请求头中的 If-Modified-Sine,Expires 作为缓存判断的标准。http1.1 则增加了 Etag, if-None-match,if-Match 等更多选项来控制缓存策略
  • 资源请求方面
    http1.0 请求资源的时候,有时候只是需要请求一点东西,但是服务器会把整个对象返回,存在浪费带宽的现象,并且不支持断点续传。http1.1 则在请求同中增加了 range 选项,支持只请求资源的某个部分,返回 206 状态码
  • 新增了 host 字段,来指定服务器的域名
  • 新增了 PUT,DELETE,TRACE,OPTIONS 请求方法

# http2.0 与 http1.1 的区别

  • 二进制协议
    http1.1 里头信息必须是文本,数据体可以是文本可以是二进制。而 http2.0 则是个完全的二进制协议,头信息和数据体都必须是二进制,统称为 ' 帧',分为头信息帧和数据帧。
  • 多路复用
    http2.0 实现了多路复用,http2.0 依旧复用 tcp 连接,但是客户端和服务端都可以同时发送多个请求 or 响应,而且不用按照顺序一一发送,避免了 http 的队头阻塞。
  • 数据流
    http2.0 使用了数据流的概念,因为 http2.0 的数据包不是按照顺序发送的,多个连续的数据包可能来自不同的请求 or 响应,所以需要指定他们来自哪个请求,哪个响应。http2.0 将请求 or 响应对应的所有数据包
    称为一个数据流,每个数据流都有一个独一无二的编号,每个数据包发送的时候都必须带上数据流 ip,来指明它属于哪个数据流。
  • 头信息压缩
    http1.1 协议不带状态,每次请求都必须带上所有的信息,所以很多字段都是重复的,这会浪费带宽,也会影响速度
  • 服务器推送
    http2.0 允许服务器未经请求,主动的向客户端发送一些静态资源。

# https 和 http 的区别

  • https 协议需要 CA 证书,费用较高,而 http 协议不需要
  • http 协议是超文本传输协议,信息是明文传输的,https 是 ssl 加密传输协议,具有安全性
  • 使用不同的传输方式,端口号也不同,http 协议是运行在 80 端口 ,https 协议是运行在 443 端口
  • http 协议很简单是无状态的,https 协议是用 ssl 协议和 http 协议构建的可加密传输,身份认证的网络协议,比 http 更安全。
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

ziMu 微信支付

微信支付

ziMu 支付宝

支付宝