十分钟了解HTTP(4)——新的协议

一:HTTP/1.0 HTTP/1.1 的新协议

1:SPDY

目标:解决 HTTP 的性能瓶颈,缩短 Web 页面的加载时间(50%)。

SPDY 以会话层的形式加入,控制对数据的流动,但还是采用 HTTP建立通信连接。同时,考虑到安全性问题,SPDY 规定通信中在表示层使用 SSL。

特点:
  • 多路复用流:通过单一的 TCP 连接,可以无限制处理多个 HTTP 请求。
  • 赋予请求优先级:可以给请求逐个分配优先级顺序,解决因带宽低而导致响应变慢的问题。
  • 压缩 HTTP 首部:通信产生的数据包数量和发送的字节数就更少了。
  • 推送功能:支持服务器主动向客户端推送数据的功能。
  • 主动提示功能:服务器可以主动提示客户端请求所需的资源。

2:WebSocket

目标:解决 Ajax 和 Comet里 XMLHttpRequest 附带的缺陷。

WebSocket,即 Web 浏览器与 Web 服务器之间全双工通信标准。

特点:
  • 推送功能:支持由服务器向客户端推送数据的推送功能。
  • 减少通信量:只要建立起 WebSocket 连接,就希望一直保持连接状态。
握手:

请求:

  1. 使用Upgrade 首部字段,告知服务器通信协议发生改变,
  2. Sec-WebSocket-Key 字段内记录着握手过程中必不可少的键值。
  3. Sec-WebSocket-Protocol 字段内记录使用的子协议。

响应:

  1. 返回状态码 101 Switching Protocols 的响应。
  2. Sec-WebSocket-Accept 的字段值是由握手请求中的 Sec-WebSocket-Key 的字段值生成的。

3:WebDAV

它是一个可对 Web 服务器上的内容直接进行文件复制、编辑等操作的分布式文件系统。

特点:

除了创建、删除文件等基本功能,它还具备文件创建者管理、文件编辑过程中禁止其他用户内容覆盖的加锁功能,以及对文件内容修改的版本控制功能。

概念:
  • 集合:统一管理多个资源的概念。
  • 资源:把文件或集合称为资源。
  • 属性:定义资源的属性。定义以“名称 = 值”的格式执行。
  • 锁:把文件设置成无法编辑状态。
方法:
  • Mkcol: 创建集合。
  • PropFind 和 PropPatch:针对资源和集合获取和修改属性。
  • Copy 和 Move:复制和移动集合和资源。
  • Lock 和 Unlock: 改写保护资源。
状态码
状态码 含义
102 可正常处理请求,但目前是处理中状态
207 存在多种状态
422 格式正确,内容有误
423 资源已被加锁
424 处理与某请求关联的请求失败
507 保存空间不足

二:HTTP/2.0

HTTP Speed + Mobility

由微软公司起草,是用于改善并提高移动端通信时的通信速度和性能的标准。

Network-Friendly HTTP Upgrade

主要是在移动端通信时改善 HTTP 性能的标准。

猜你喜欢

转载自blog.csdn.net/weixin_36904568/article/details/88260718