最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何组合的视频上传块的Node.js

运维笔记admin8浏览0评论

如何组合的视频上传块的Node.js

如何组合的视频上传块的Node.js

我试图用busboy分块上传一个大的(8.3GB)视频到我的Node.js(快递)服务器。如何我收到的每个数据块(打杂是这样做的部分),并拼凑它作为一个整体的视频?

我一直在寻找到读取和写入流,但我没有得到过整个视频。我一直覆盖它的部分,导致约1 GB。

这里是我的代码:

req.busboy.on('file', (fieldname, file, filename) => {
    logger.info(`Upload of '${filename}' started`);

    const video = fs.createReadStream(path.join(`${process.cwd()}/uploads`, filename));
    const fstream = fs.createWriteStream(path.join(`${process.cwd()}/uploads`, filename));

    if (video) {
        video.pipe(fstream);
    }

    file.pipe(fstream);

    fstream.on('close', () => {
        logger.info(`Upload of '${filename}' finished`);
        res.status(200).send(`Upload of '${filename}' finished`);
    }); 
});
回答如下:

使用流

multer让您轻松处理文件上传,明确路线的一部分。这对于不留下显著内存占用小文件的伟大工程。

与加载一个大文件到内存的问题是,你实际上可以运行内存不足而导致应用程序崩溃。

使用的multipart / form-data的请求。这可以通过而不是你的请求选项分配readStream到现场进行处理

流是用于优化性能的极其宝贵的。

发布评论

评论列表(0)

  1. 暂无评论