我通过websocket从远程主机接收protobuf数据。我知道如何使用Protobuf.js解码JS中的protobuf但我无法确定通过websocket的结果的哪一部分实际上是我需要解码的protobuf数据。试图解码整个结果给了我JS错误:
无法包装null或非对象
如果我登录到控制台从websocket返回的对象,它看起来像这样:
我已尝试解码各种内容,例如e.data
(其中e
是返回的总结果)但不确定我是否以正确的方式解决此问题。
这部分内容包含实际的protobuf内容吗?
答案 0 :(得分:1)
是的,数据位于.data
,似乎表示为Blob
。在javascript中使用blob并非易事。要从中获取对象,您需要一个接受Blob
并返回反序列化对象的javascript protobuf实现。