Skip to content

websocket和http请求的区别

  • 协议不同ws:// http://
  • websocket 没有跨域限制
  • http可配置https,ws也可配置wss
  • websocket 可双端实时通信

websocket 简介

  1. websocket 连接过程
    • 先发起一个http请求,status === 101 切换协议
    • 成功之后升级为ws协议,再通讯
  2. websocket 使用场景
    • 用于:消息实时通知、聊天室、协同编辑文档

websocket实现聊天室功能1

  • 特点:多个客户端连接同一个服务端
  • 在服务端创建一个list,将每个ws会话添加进去,遍历一下,如果不是自己发送的内容则发送出来

websocket和http轮询的区别

  1. websocket 实时通信(双端通信)
    • 客户端可向服务端发送请求,同时服务端也可随时向客户端发起请求,无需等待,无需阻塞
    • 特点:客户端发起请求,服务端也可以发起请求(双端通信)
  2. http 长轮询(单端通信)
    • 客户端在接收到服务端数据后立马再次发送请求,服务端如果没有数据变更则会一直处于等待状态,什么时候有数据什么时候返回
    • 当长轮询断开时会自动再次发起,不断反复
    • 特点:客户端发起请求,服务端阻塞等待,不会立即返回