【发布时间】:2014-07-21 02:23:29
【问题描述】:
我想要流很多 ArrayBuffers。
将字符串从客户端发送到服务器并返回没有问题!
向服务器发送ArrayBuffer是没有问题的
从服务器向客户端发送 ArrayBuffer 不起作用。我在客户端得到一个空的 ArrayBuffer => ArrayBuffer{}
服务器:
var server = BinaryServer({port: 9000});
server.on('connection', function(client){
client.on('stream', function(stream, meta){
console.log(meta);
stream.on('data', function(data){
//console.log(data);
stream.write(data);
});
});
});
console.log(data) 向我显示了填充后的数组,所以这很有效。
客户:
var wsStream = null;
var client = BinaryClient('ws://localhost:9000');
client.on('open', function(){
wsStream = client.createStream("audio");
wsStream.on('data', function(data){
console.log(data);
});
});
这个日志:ArrayBuffer {}
所以没有数据:(
我使用以下方式发送数据:wsStream.write(arrayBuffer);
如果我发送一些数组 wsStream.write([0,2]);或一些字符串 wsStream.write("Hello");我没问题,可以取回所有数据。
为什么会这样?谢谢:)
【问题讨论】:
-
通过设置client.binaryType = "arraybuffer";找到了解决方案
-
酷 - 回复自己并标记为答案!
标签: javascript binary websocket arraybuffer