WebSocket用法

本文是为了介绍WebSocket的基本用法。话不多说,直接上代码:

var websocket = null;
//websocket发送消息
function send(message) {
  if (websocket != null) {
    websocket.send(JSON.stringify(message));
    return true;
  } else {
    alert('无法连接服务器,请检查网络配置');
    return false;
  }
}
//发送消息
function sendMsg() {
  var message = document.getElementById('text').value;
  send({
    cmd:"send_private",
    to:'46',
    type: 'text',
    content: message
  });
}
var connect = function() {
  websocket = new WebSocket("ws://"+ window.location.host +"/yingxin/ws/wschat");
  //连接成功建立的回调方法
  websocket.onopen = function () {
  setMessageInnerHTML("WebSocket连接成功");
}
//接收到消息的回调方法
websocket.onmessage = function (event) {
}
//连接发生错误的回调方法
websocket.onerror = function () {
  setMessageInnerHTML("WebSocket连接发生错误");
};
}
//判断当前浏览器是否支持WebSocket
if ('WebSocket' in window) {
  connect();
}
else {
  alert('当前浏览器不支持websocket')
}
//连接关闭的回调方法
websocket.onclose = function () {
  setMessageInnerHTML("WebSocket连接关闭");
}
//监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。
window.onbeforeunload = function () {
  closeWebSocket();
}
//将消息显示在网页上
function setMessageInnerHTML(innerHTML) {
  alert(innerHTML);
}
//关闭WebSocket连接
function closeWebSocket() {
  websocket.close();
}

你可能感兴趣的:(WebSocket用法)