前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在 Node.js 里使用 multiparty 上传文件

在 Node.js 里使用 multiparty 上传文件

作者头像
Jerry Wang
发布2023-02-27 14:41:02
2.8K0
发布2023-02-27 14:41:02
举报

需求

将上传的文件直接保存到 Google Cloud Storage 中。

解决方法:我们需要使用 part stream 订阅标准流事件,例如 data 和 end 以接收文件数据。

示例代码如下:

代码语言:javascript
复制
part.on("data", chunk => {
    writeStream.write(chunk);
});

part.on("end", chunk => {
    writeStream.end(chunk);
});

writeStream - 是要放置数据的另一个流。 在我的例子中,这是通过 signedUrl 发出的 Google Cloud Storage 文件 PUT 请求。 part - 是表单部件事件的部件对象。

流是支持 Node.js 应用程序的基本概念之一。 它们是数据处理方法,用于按顺序读取输入或将输入写入输出。

流是一种以高效方式处理读/写文件、网络通信或任何类型的端到端信息交换的方式。

流的独特之处在于,它不是像传统方式那样由程序一次将文件全部读入内存,而是逐条读取数据块,处理其内容而不将其全部保存在内存中。

这使得流在处理大量数据时非常强大,例如,文件大小可能大于您的可用内存空间,因此无法将整个文件读入内存以进行处理。 这就是流来救援的地方!

使用流处理较小的数据块,可以读取较大的文件。

让我们以 YouTube 或 Netflix 等“流媒体”服务为例:这些服务不会让您同时下载视频和音频。 相反,您的浏览器接收视频作为连续的块流,允许接收者几乎立即开始观看和/或收听。

然而,流不仅仅是处理媒体或大数据。 它们还赋予我们代码“可组合性”的力量。 考虑到可组合性进行设计意味着可以以某种方式组合多个组件以产生相同类型的结果。 在 Node.js 中,可以使用流通过管道将数据传入和传出其他较小的代码片段,从而组合出功能强大的代码片段。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-02-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 需求
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档