WebSocket协议如何详细解析?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3513个文字,预计阅读时间需要15分钟。
WebSocket + 协议背景 + 早期,网站通过轮询或Comet技术向用户推送消息,轮询即浏览器每隔几秒向服务器发送HTTP请求,服务器返回消息后立即关闭连接。
早期,在网站上推送消息给用户,只能通过轮询的方式或 Comet 技术。轮询就是浏览器每隔几秒钟向服务端发送 HTTP 请求,然后服务端返回消息给客户端。
轮询技术一般在浏览器上就是使用 setInerval 或 setTimeout
这种方式的缺点:
需要不断的向服务端发送 HTTP 请求,这种就比较浪费带宽资源。而且发送 HTTP 请求只能由客户端发起,这也是早期 HTTP1.0/1.1 协议的一个缺点。它做不到由服务端向客户端发起请求。
为了能实现客户端和服务端的双向通信,经过多年发展于是 WebSocket 协议在 2008 年就诞生了。
它最初是在 HTML5 中引入的。经过多年发展后,该协议慢慢被多个浏览器支持,RFC 在 2011 年就把该协议作为一个国际标准,叫 rfc6455。
二、协议简介WebSocket 是一种支持双向通信的网络协议。
- 双向通信:客户端(比如浏览器)可以向服务端发送消息,服务端也可以主动向客户端发送消息。
本文共计3513个文字,预计阅读时间需要15分钟。
WebSocket + 协议背景 + 早期,网站通过轮询或Comet技术向用户推送消息,轮询即浏览器每隔几秒向服务器发送HTTP请求,服务器返回消息后立即关闭连接。
早期,在网站上推送消息给用户,只能通过轮询的方式或 Comet 技术。轮询就是浏览器每隔几秒钟向服务端发送 HTTP 请求,然后服务端返回消息给客户端。
轮询技术一般在浏览器上就是使用 setInerval 或 setTimeout
这种方式的缺点:
需要不断的向服务端发送 HTTP 请求,这种就比较浪费带宽资源。而且发送 HTTP 请求只能由客户端发起,这也是早期 HTTP1.0/1.1 协议的一个缺点。它做不到由服务端向客户端发起请求。
为了能实现客户端和服务端的双向通信,经过多年发展于是 WebSocket 协议在 2008 年就诞生了。
它最初是在 HTML5 中引入的。经过多年发展后,该协议慢慢被多个浏览器支持,RFC 在 2011 年就把该协议作为一个国际标准,叫 rfc6455。
二、协议简介WebSocket 是一种支持双向通信的网络协议。
- 双向通信:客户端(比如浏览器)可以向服务端发送消息,服务端也可以主动向客户端发送消息。

