毕设中可能会用到socket.io库, 之前也有简单使用过, 但只是停留在用的层面, 对其底层协议模模糊糊, 今天就来总结一下.

记录


WebSocket

H5新增的协议

  • HTTP协议为基础(在Header字段中添加了UpgradeConnection字段).
  • HTTP/1.0协议只能一个request, 一个response. HTTP/1.1中新增了Keep-alive字段, 可以在一个TCP连接中,发送多个request, 接收多个response.
  • WebSocket实现了双向通信. 也就是说服务器可以主动推送消息给客户端

Socket

抽象接口模型(套接字层)

在网络中, 可以理解为连接的两端. 封装了传输层的复杂协议, 供开发者使用