短连接、轮询、长连接

  • 短连接是指通讯双方有数据交互时,就建立一个连接。数据发送完成后,就断开这个连接,就是每次连接只完成一项业务的发送。像网站正常的 http 请求一般都用短连接。
  • 轮询,客户端通过定时执行,不断刷新服务端接口,以获取最新数据。
  • 长连接,指在一个连接上可以连续发送多个数据包。当需要主动向客户端推送数据时,例如聊天、即时游戏、手机推送,这些应当使用长连接。

连接到WebSockets

const webSocket = new WebSocket('ws://localhost:9394/');

onopen连接成功后触发

webSocket.onopen = function(event){
   $('#chat').append('<br>成功连接到websocket服务器');
};

onmessage收到服务器发送的信息时触发

webSocket.onmessage = function(event){
   $('#chat').append("<br>" + event.data)
   $('#chat').animate({scrollTop: $('#chat').height()})
};

onclose与服务器连接丢失或关闭时触发

webSocket.onclose = function(event){
   $('#chat').append('<br>连接关闭')
};

send发送信息到服务器

$('form#chat_form').submit(function(){
    var textfield = $('#message')
    webSocket.send(textfield.val())
    textfield.val('')
    return false
})

已添加到喜欢了