如何发送JSON中的ArrayBuffer从js客户端到nodejs服务器?
我想发送数据的typesArrayBuffer在JSON到我的服务器使用socket.io像这样:
socket.emit('record', { name: myUsername + '.wav', data: data //arraybuffer });
在服务器端,当我在套接字中收到“logging”事件时,我从JSON获取数据并将其保存在名称文件中,如下所示:
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
。 将要读取的data
.pipeThrough()
ReadableStream
,并传递给WritableStream
或TransformStream
,例如使用.pipeThrough()
,请参阅通过stdin接收数据并将其存储为variables/数组 。