📜  javascript websocket - Javascript (1)

📅  最后修改于: 2023-12-03 14:42:27.932000             🧑  作者: Mango

Javascript WebSocket

WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议,可与 HTTP 协议兼容。该技术可以实现客户端和服务器端之间的实时数据传输。

Javascript WebSocket API 允许程序员创建 WebSocket 连接并在客户端和服务器之间发送数据。下面是一个典型的 Javascript WebSocket 客户端示例:

// 创建 WebSocket 对象实例
const socket = new WebSocket('ws://localhost:8080');

// 连接打开事件
socket.addEventListener('open', () => {
  console.log('连接已打开');
});

// 接收消息事件
socket.addEventListener('message', (event) => {
  console.log(`从服务器接收到消息:${event.data}`);
});

// 连接关闭事件
socket.addEventListener('close', () => {
  console.log('连接已关闭');
});

// 发送消息
socket.send('Hello, WebSocket!');
WebSocket API 方法

Javascript WebSocket API 提供了以下方法:

  • new WebSocket(url[, protocols]):创建一个新的 WebSocket 对象实例,并建立与指定 URL 的服务器连接。protocols 参数是一个字符串数组,指定了可接受的子协议(可选)。
  • WebSocket.close([code[, reason]]):关闭 WebSocket 连接。
  • WebSocket.send(data):向服务器发送数据。
WebSocket API 属性

Javascript WebSocket API 提供了以下属性:

  • WebSocket.readyState:表示 WebSocket 的当前状态。可能的值包括:
    • WebSocket.CONNECTING:WebSocket 连接正在建立中。
    • WebSocket.OPEN:WebSocket 连接已建立成功。
    • WebSocket.CLOSING:WebSocket 连接正在关闭中。
    • WebSocket.CLOSED:WebSocket 连接已关闭。
  • WebSocket.bufferedAmount:表示在 send() 方法后仍然保留在 WebSocket 缓冲区中的字节数。
  • WebSocket.extensions:表示与 WebSocket 连接关联的扩展列表。
  • WebSocket.protocol:表示与 WebSocket 连接关联的子协议。
参考资料