在浏览器中描述文本和二进制websocket消息

时间:2018-02-26 20:27:28

标签: javascript websocket blob

以下代码段接收websocket消息。它尝试readAsText blob并将其显示为JPEG。

      ws.onmessage = function(message) {
        console.log('websocket blob:', message.data);
        var text = reader.readAsText(message.data);
        img.src = window.URL.createObjectURL(message.data);
        console.log("jpeg received");
        ctx.drawImage(img, 0, 0);
      }
    }
    reader.onload = function(progressEvent) {
      var text = this.result;
      if (text.startsWith('{"')) {
        console.log("status received", text);
        document.querySelectorAll('pre')[0].textContent=text;
      }
    }

(代码被破坏,因为它试图将纯文本消息显示为JPEG。)

如何区分两种不同类型的传入websocket数据包?我控制着两端,所以我可以根据需要更改NodeJS服务器发送的内容。

我的JSON数据包始终以{"开头,我的JPEG数据包始终以FF D8 FF开头。

有没有办法在发送时将一些元数据附加到websocket消息,我可以在页面中查询?

我可以在没有回调方法的情况下对websocket blob进行任何处理吗?

0 个答案:

没有答案