我有一些使用max ogden的websocket-stream库(https://github.com/maxogden/websocket-stream)的代码,非常漂亮。
当我这样做时:
websocketStream.on('data', function(data){
console.log(data);
});
我在客户端获得了一个ArrayBuffer(我想要的是,这是一个二进制websocket流)。
当我尝试实现可写流(使用原型或其他)时,我在_write中获取了ArrayBufferView而不是裸ArrayBuffer :-(。我使用objectMode:true。
最简单的例子是:
var s = new Writable({objectMode:true});
s._write = function(chunk, enc, next){
console.log(chunk); // an arraybufferview
console.log(enc); // `buffer`
next();
}
websocketStream.pipe(s);
谁在新建缓冲区视图,我该如何阻止它们?
解决方法是将chunk写入并获取.buffer。但我尽我所能去了解“实施者”#39;新流界面的一面,并且愿意正确地做事。