nodejs 中的Stream流如何复制使用呢

发布于 2022-09-07 16:54:06 字数 649 浏览 21 评论 0

比如下面的代码
stream 在使用后就会被消费掉,但是我想多次操作这个stream,该怎么解决呢,我下面的代码是通过fs方式再次获得,但是io太过于频繁了

 const stream = await ctx.getFileStream();
      const fs = require('fs');
      const qhash = '123123';
      // 写文件
      await new Promise(resolve =>
        stream
          .pipe(fs.createWriteStream(`upload/${qhash}.zip`))
          .on('finish', resolve));
      getManifest(`upload/${qhash}.zip`);
      const stream2 = await fs.createReadStream(`upload/${qhash}.zip`);
      const sssssshash = await qetag(stream2);
      const stream3 = await fs.createReadStream(`upload/${qhash}.zip`);
      // console.log(buffer);

   

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

荒路情人 2022-09-14 16:54:06

试一下stream.PassThrough
参考:https://stackoverflow.com/que...

烟花易冷人易散 2022-09-14 16:54:06

你好,请问你解决了吗?我现在也是需要将ctx.getFileStream() 获取到的stream操作多次,你是怎么做的呢?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文