Node.js 流文件上载到S3,同时使用ExpressJS限制文件大小
我想把用户的文件上传到S3。我有一个web客户端/NodeJS快速解决方案 到目前为止,我在研究中发现,使用多部分上传,我可以执行以下任一操作: 1.)如果直接使用管道启用流式传输,则 2.)如果需要控制大小,则必须禁用管道/流式传输,并且必须将文件写入磁盘或内存缓冲区以检查文件大小,然后将其传输到S3 有什么办法我能同时得到这两个吗 我正在研究以下中间产品:Node.js 流文件上载到S3,同时使用ExpressJS限制文件大小,node.js,amazon-web-services,express,amazon-s3,Node.js,Amazon Web Services,Express,Amazon S3,我想把用户的文件上传到S3。我有一个web客户端/NodeJS快速解决方案 到目前为止,我在研究中发现,使用多部分上传,我可以执行以下任一操作: 1.)如果直接使用管道启用流式传输,则 2.)如果需要控制大小,则必须禁用管道/流式传输,并且必须将文件写入磁盘或内存缓冲区以检查文件大小,然后将其传输到S3 有什么办法我能同时得到这两个吗 我正在研究以下中间产品: 至少可以使用busboy,设置各种请求范围的限制。因此,您可以为所有文件设置一个文件大小限制(或者在每个文件的基础上进行此操作,方
至少可以使用
busboy
,设置各种请求范围的限制。因此,您可以为所有文件设置一个文件大小限制(或者在每个文件的基础上进行此操作,方法是自己计算并排出超出自定义文件大小限制的任何额外数据),然后直接流式传输到S3(使用Amazon的多部分API)。如果busboy
通知您已达到文件大小限制,那么您只需删除刚刚流式传输到S3的部分文件
否则,另一种方法就像你说的,先保存到磁盘,然后上传到S3
两者都有各自的优点和缺点,但由于多部分流的性质,对于这个特定问题确实没有其他解决方案。模块?