websocket

websocket

websocekt是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议。

1. websocket

WebSocket是为解决客户端与服务端实时通信而产生的技术。其本质是先通过HTTP/HTTPS协议进行握手后创建一个用于交换数据的TCP连接,

此后服务端与客户端通过此TCP连接进行实时通信。

2.优点

服务器推送服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息。在建立连接之后,服务器可以主动传送数据给客户端。
Header服务器与客户端之间交换的标头信息很小。

以前我们实现推送技术,用的都是轮询,在特点的时间间隔有浏览器自动发出请求,将服务器的消息主动的拉回来,在这种情况下,我们需要不断的向服务器发送请求,然而HTTP request 的header是非常长的,里面包含的数据可能只是一个很小的值,这样会占用很多的带宽和服务器资源。会占用大量的带宽和服务器资源

3. 使用

客户端:

var ws = new WebSocket(“ws://localhost:8080”);

ws.onopen = function()//当websocket创建成功时,即会触发onopen事件
{
  console.log(“open”);
  ws.send(“hello”);//用于叫消息发送到服务端
};

ws.onmessage = function(evt)//当客户端收到服务端发来的消息时,会触发onmessage事件,参数evt.data中包含server传输过来的数据
{
  console.log(evt.data)
};

ws.onclose = function(evt)//当客户端收到服务端发送的关闭连接的请求时,触发onclose事件
{
  console.log(“WebSocketClosed!”);
};

ws.onerror = function(evt)//如果出现连接,处理,接收,发送数据失败的时候就会触发onerror事件
{
  console.log(“WebSocketError!”);
};

服务端:node.js, jetty, tomcat

IT文库 » websocket
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址