在 JavaScript 中,当您实例化 WebSocket 时:
ws = new WebSocket(url);
你可以设置它的二进制类型:
ws.binaryType = "blob";
// or
ws.binaryType = "arraybuffer";
问题:我可以即时更改 binaryType 吗?
例如,如果我想使用同一个 WS 实例来交错文本和二进制消息,我可以执行以下操作吗?
ws = new WebSocket(url);
// Send text
ws.binaryType = "blob";
ws.send("this is text");
// Now send binary data
ws.binaryType = "arraybuffer";
var ab = new ArrayBuffer(...);
ws.send(ab);
在阅读 W3C WebSocket 规范时,我没有看到任何明确表示“您不能更改 binaryType”的内容,但是我看到的每个 WebSocket 示例/用法都设置了 binaryType 一次然后永远不会更改它,这有点暗示它无法更改。
任何信息,将不胜感激。