gpt4 book ai didi

javascript - 如何从js客户端发送json格式的ArrayBuffer到nodejs服务器?

转载 作者:太空宇宙 更新时间:2023-11-04 02:01:58 25 4
gpt4 key购买 nike

我正在尝试使用 socket.io 将 json 中 ArrayBuffer 类型的数据发送到我的服务器,如下所示:

socket.emit('record', {
name: myUsername + '.wav',
data: data //arraybuffer
});

在服务器端,当我在套接字中收到“记录”事件时,我从 JSON 获取数据并将其保存在name文件中,如下所示:

socket.on('record', function(message){
var fileWriter = new wav.FileWriter(message.name, {
channels: 1,
sampleRate: 48000,
bitDepth: 16
});
message.data.pipe(fileWriter);
});

我正在使用 npm 中的 require('wav') require('stream') 包。问题是我的服务器在 message.data.pipe(fileWriter); 上崩溃并出现以下错误:

TypeError: message.data.pipe is not a function

我做错了什么?我不能在socket.io中像这样发送ArrayBuffer吗?

最佳答案

data 是一个 ArrayBuffer,而不是 ReadableStream。将要由 ReadableStream 读取的 data 入队,传递给 WritableStreamTransformStream,例如使用 .pipeThrough(),请参阅 Receiving data via stdin and storing as a variable/array .

关于javascript - 如何从js客户端发送json格式的ArrayBuffer到nodejs服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45654610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com