我正在构建一个Node软件包,需要下载给定URL的一些文件。但是,我不想直接将它们保存到文件系统中。相反,我需要先对其进行预处理,然后再保存到磁盘中。因此,我想将文件内容保存在缓冲区中。怎么用pipe()完成?
当然,我可以保存一个临时文件,然后打开该文件,对其进行处理并保存结果,但这会给磁盘带来不必要的读取/写入。
文件通常较小,为.txt或.zip文件,因此将它们保存在内存中不会带来任何危害。
目标之一是在下载的文件是.zip时仅查找和提取伪装的文件。使用Adm-Zip我可以做到这一点,但必须传递一个Buffer。
事先想好你
答案 0 :(得分:2)
<form>
<input type="submit" formaction="/one" value="Submit To URL One">
<input type="submit" formaction="/two" value="Submit To URL Two">
</form>
答案 1 :(得分:1)
您可以使用node-fetch库。存储库自述文件中的代码示例:
// if you prefer to cache binary data in full, use buffer()
// note that buffer() is a node-fetch only API
fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png')
.then(res => res.buffer())
.then(buffer => { /* do whatever you want with buffer */ })