WebSocket 二进制消息转换为字符串:使用 TextDecoder API
WebSocket 的 binary message 是一个二进制数据流,如果要将其转换为字符串,需要先将二进制数据流转换为文本格式。常见的方式是使用 TextDecoder API。
示例代码如下:
const decoder = new TextDecoder();
socket.onmessage = (event) => {
if (typeof event.data === 'string') {
// 如果消息已经是字符串,则直接处理
console.log('收到字符串消息:', event.data);
} else {
// 如果是二进制消息,则将其转换为字符串
const text = decoder.decode(event.data);
console.log('收到二进制消息:', text);
}
};
在上述代码中,我们首先创建了一个 TextDecoder 实例,然后在 WebSocket 的 onmessage 事件中判断消息类型,如果是字符串则直接处理,否则将二进制消息转换为字符串。具体实现方式可以参考 MDN 文档:TextDecoder。
原文地址: https://www.cveoy.top/t/topic/mY2U 著作权归作者所有。请勿转载和采集!