为什么有HTTP还要有websocket

http协议下,服务器不会主动向客户端发起请求,只会响应。
在这种状态下,如果要网页主动刷新反馈,如页游这种,会一直更新数据的情况,一种常见方案是定时向服务器发请求来刷新,用户层面没感知,但其实一直发请求实际是由带宽占用的;
方案二,长轮询,客户端发起请求后超时时间设置的比较长(如1min),就发送一次请求后若服务器端不是立刻有新内容推送过来还能响应。
http本质还是一个半双工协议,因此像游戏这种需要大量主动发送数据的场景还是不适用,而websocket协议就比较解决这个问题。
06:35
opcde:用定义帧的数据类型
paload长度:定义该数据帧的长度,选用最开始7为做标志位,若是0-125则只看这7位(2^7=128),而126则使用扩展payload长度,到128刚好可以扩展三次,每个扩展长度16位。使用扩展位是,扩展位存放实际长度,126 7 8仅作标记用。
payload数据:实际要传输的数据
09:06
websocket只在建立连接的时候借用了http,然后就与http没有关系了