Как передать один читаемый поток сразу в два потока с возможностью записи в Node.js?

Цель состоит в том, чтобы:

Создайте поток чтения файла.Труба это к gzip (zlib.createGzip())

Затем направьте поток чтения вывода zlib в:

1) HTTPresponse объект

2)а также записываемый поток файлов для сохранения распакованного вывода.

Теперь я могу сделать до 3.1:

var gzip = zlib.createGzip(),
    sourceFileStream = fs.createReadStream(sourceFilePath),
    targetFileStream = fs.createWriteStream(targetFilePath);

response.setHeader('Content-Encoding', 'gzip');

sourceFileStream.pipe(gzip).pipe(response);

... который отлично работает, но мне нужно такжесохранить сжатые данные в файл так что мне не нужно каждый раз повторять архив и иметь возможность напрямую передавать сжатые данные в качестве ответа.

Итак, как я могу направить один читаемый поток в два записываемых потока одновременно в Node?

Было быsourceFileStream.pipe(gzip).pipe(response).pipe(targetFileStream); работать в Node 0.8.x?

Ответы на вопрос(2)

Ваш ответ на вопрос