WebSocket: binaryType 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

注意:此功能在 Web Workers 中可用。

WebSocket.binaryType 屬性控制透過 WebSocket 連線接收的二進位制資料的型別。

字串

"blob"

對二進位制資料使用 Blob 物件。這是預設值。

"arraybuffer"

對二進位制資料使用 ArrayBuffer 物件。

示例

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

// Change binary type from "blob" to "arraybuffer"
socket.binaryType = "arraybuffer";

// Listen for messages
socket.addEventListener("message", (event) => {
  if (event.data instanceof ArrayBuffer) {
    // binary frame
    const view = new DataView(event.data);
    console.log(view.getInt32(0));
  } else {
    // text frame
    console.log(event.data);
  }
});

規範

規範
WebSocket
# ref-for-dom-websocket-binarytype①

瀏覽器相容性