当前位置: 首页 > 知识库问答 >
问题:

一起发送JSON和blob

慕弘义
2023-03-14

我正在写一个简单的流媒体服务。

A浏览器A打开服务器的web套接字,然后另一个浏览器B打开同一服务器的新套接字。

浏览器A通过其摄像机(MediaRecorderAPI)注册视频并将其发送到服务器。

服务器将此视频广播到其他连接的浏览器。

我有一个使用套接字的工作版本。IO,但我希望使用普通JavaScript(Node.js服务器上的WebSocket.Server和客户端上的WebSocket)。

这就是问题所在:

带插座。io a可以这样写:

  this.socket.emit('broadcast', {
    stream: new Blob(stream, {'type': `video/webm${MEDIA_CHARSET}`}),
    from: {id: this.socket.id}
  });

流来自mediarecorder-

但对于原生websocket,我无法发送嵌入JSON对象的blob,因为websocket只能发送string或arraybuffer。

为了将JSON和blob一起发送,我尝试了许多不同的方法,但都不起作用。

有什么帮助吗?

是否可以只使用引擎。客户端的IO以便将带有blob和JSON的消息打包在一起?对这种方式有什么想法吗?

共有1个答案

海信鸥
2023-03-14

通过二进制Web套接字发送数据有许多方法可以序列化。我建议考虑CBOR,它将序列化为二进制,并支持其中的二进制数据。

NPM上有几个CBOR库可供选择。

 类似资料:
  • 问题内容: 使用Ajax,我试图仅将Json数据发送到节点服务器,不进行任何处理,仅在发送时发出警报,在接收到时发出警报: 这是我的html5:具有onclick函数的简单按钮,可触发该函数使用ajax调用 这是节点服务器的一部分:用于创建服务器并侦听某些操作 没有警报被触发,所以我不认为ajax正在尝试发送信息。 问题答案: 在服务器端尝试此操作: 在客户端: 希望这对你有用

  • 问题内容: 我正在尝试在URL中传递路径参数和查询参数,但出现一个奇怪的错误。下面是代码 我的网址正在变成 我应该怎么做才能使其正常工作。我期望参数可以将id添加到网址中 请提出建议。提前致谢 问题答案: 我将使用from 来传递所有类型的URI参数。 例如:

  • 有棱角的 代码在此处输入图像描述 Spring 错误2021-01-02 16:50:55.397 WARN 15076---[nio-8080-exec-1]。w、 s.m.s.DefaultHandlerExceptionResolver:已解决[org.springframework.web.method.annotation.MethodArgumentConversionNotSuppo

  • 问题内容: 我该如何发布文件并输入字符串数据?例如,我还有许多其他 隐藏的输入数据 ,需要将它们发送到服务器, html, 使用下面的这段代码,我仅设法发送文件数据 ,而不 发送隐藏的输入数据。 jQuery, server.php 结果, 我希望得到这个结果, 可能吗? 问题答案: 添加了一个循环,并在中将更改为,以供对象引用附加到。

  • 我正在Spring-Boot中实现微服务。我尝试将@RequestBody与一个MultipartFile一起发送。我在stackoverflow中引用了一些问题,但没有任何帮助。 视频类 方法 我只是试着用@requestpart,并附上我如何请求的屏幕截图 错误为

  • 问题内容: 我已经通过使用ApacheCXF(v3.0.4)实现了JAX-WS客户端,并且一切正常,但是当我想在Java 8(jdk1.8.0_25)中使用安全连接(SSL / TLS)时出现了问题。 我在日志(-Djavax.net.debug = all)中看到以下异常: 经过depeer分析后,我发现问题是由于Java 8不会发送server_name(SNI),而Java 7却发送了ser