WebSocket:message 事件

基线 广泛可用

此功能已得到很好的建立,并且可以在许多设备和浏览器版本中使用。它自以下时间起在浏览器中可用: 2015年7月.

当通过 WebSocket 接收数据时,将触发 message 事件。

语法

在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。

js
addEventListener("message", (event) => {});

onmessage = (event) => {};

事件类型

事件属性

除了下面列出的属性外,父接口 Event 的属性也可使用。

data 只读

由消息发送方发送的数据。此属性的类型取决于 WebSocket 消息的类型和 WebSocket.binaryType 的值。

  • 如果消息类型为“文本”,则此字段为字符串。
  • 如果消息类型为“二进制”类型,则此属性的类型可以从此套接字的 binaryType 推断出来
    • 如果 binaryType"arraybuffer",则为 ArrayBuffer
    • 如果 binaryType"blob",则为 Blob。这没有关联的媒体类型(Blob.type"")。
origin 只读

表示消息发送方来源的字符串。

存在来自 MessageEvent 接口的其他属性,但与 WebSocket API 无关,并且保留其默认值

示例

js
// Create WebSocket connection.
const socket = new WebSocket("ws://127.0.0.1:8080");

// Listen for messages
socket.addEventListener("message", (event) => {
  console.log("Message from server ", event.data);
});

规范

规范
WebSockets 标准
# dom-websocket-onmessage

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。

另请参阅