html5 websocket教程

胜哥 Html代码

WebSocket 是 HTML5 提供的一种新的网络协议,可以在浏览器和服务器之间建立双向的实时通信,可以用于实现在线游戏、聊天室、股票行情等实时应用。下面是使用 HTML5 WebSocket 的教程:

  1. 创建 WebSocket 对象

使用 WebSocket 需要先创建 WebSocket 对象。创建 WebSocket 对象的语法如下:

var ws = new WebSocket(url);

其中,url 是 WebSocket 服务器的地址,可以是相对路径或绝对路径。例如:

var ws = new WebSocket("ws://localhost:8080/chat");
  1. WebSocket 事件

WebSocket 对象支持多个事件,用于处理连接状态、接收消息等。常用的事件有以下几个:

  • onopen: 连接建立时触发
  • onmessage: 接收到消息时触发
  • onerror: 发生错误时触发
  • onclose: 连接关闭时触发

例如,可以使用以下代码处理连接建立时的事件:

ws.onopen = function() {
  console.log("WebSocket connected.");
};
  1. 发送消息

使用 WebSocket 发送消息需要调用 send() 方法。例如,可以使用以下代码发送消息:

ws.send("Hello, WebSocket!");
  1. 接收消息

WebSocket 接收到消息时会触发 onmessage 事件,可以使用以下代码处理接收到消息的事件:

ws.onmessage = function(event) {
  console.log("Received message: " + event.data);
};

其中,event.data 是接收到的消息。

  1. 关闭连接

可以使用 close() 方法关闭 WebSocket 连接。例如,可以使用以下代码关闭连接:

ws.close();

完整的 HTML5 WebSocket 示例代码如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>WebSocket Test</title>
  <script>
    var ws = new WebSocket("ws://localhost:8080/chat");
    
    ws.onopen = function() {
      console.log("WebSocket connected.");
    };
    
    ws.onmessage = function(event) {
      console.log("Received message: " + event.data);
    };
    
    ws.onclose = function() {
      console.log("WebSocket closed.");
    };
    
    ws.onerror = function() {
      console.log("WebSocket error.");
    };
    
    function send() {
      var message = document.getElementById("message").value;
      ws.send(message);
    }
    
    function close() {
      ws.close();
    }
  </script>
</head>
<body>
  <input type="text" id="message">
  <button onclick="send()">Send</button>
  <button onclick="close()">Close</button>
</body>
</html>

以上是使用 HTML5 WebSocket 的教程,需要注意的是,WebSocket 需要浏览器和服务器均支持 WebSocket 协议才能正常使用。