![](/img/trans.png)
[英]Passing a file via POST to NodeJS and then pass to another API without saving on Disk
[英]Unzip a file from Buffer without saving file anywhere on disk in NodeJS
对于我当前的项目,我将通过base64编码的字符串将zip文件发送到API服务器。 我希望将该字符串转换为Buffer(或某种其他对象),并将ZIP文件分解为与ZIP文件中的文件结构相同的对象,以便可以使用文件对象将其推送到云中。 我已经读过有关ADM-ZIP和其他类似工具的信息,但是除非我只是误解了文档,否则所有这些工具似乎都需要磁盘上的文件。 我希望避免将文件保存在磁盘上,因为此API在具有可变存储空间的云中运行。
谢谢您提前提供的所有帮助!
在不保存文件的情况下,处理数据的最佳方法是node.js中的Streams
API。 寻找libs b64
-base64的流解码unzip-stream
stream-解压流中的文件
因此,您的流程将是接受请求,从其数据(base64)创建ReadStream
,将其通过pipe
传输到b64
,通过pipe
unzip-stream
到unzip-stream
,依此类推。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.