在节点.pipe(响应)不起作用。如何返回视频?

时间:2015-11-03 17:25:36

标签: javascript node.js express encryption video-streaming

我有加密的mp4文件。

我想解密并返回响应中的视频数据而不保存磁盘上的解密数据。这就是我现在正在做的事情:

var fs = require('fs'),
    crypto = require('crypto'),
    encryptedFilePath = 'videos/1.mp4',
    decrypedFilePath = "tmp/1.mp4",
    algorithm = 'aes-256-ctr',
    key = "abcd1234" ;

fs.createReadStream(encryptedFilePath)
    .pipe(crypto.createDecipher(algorithm, key))
    .pipe(fs.createWriteStream(decrypedFilePath))
    .on("finish", function(){
        res.sendFile(decrypedFilePath);
    });

我想做类似以下的事情,但它没有工作:

fs.createReadStream(encryptedFilePath)
   .pipe(crypto.createDecipher(algorithm, key))
   .pipe(response);

更新1

我已经看到了两个选项的标题,它们是不同的。

使用.pipe(response)

RemappedExtraction.java

使用res.sendFile(decrypedFilePath)

With .pipe(response)

PS:我使用的是使用Nodejs / express的With res.sendFile(decrypedFilePath); CMS。感谢

0 个答案:

没有答案