【发布时间】:2019-05-23 02:51:27
【问题描述】:
我使用 npm 请求。我想下载一个文件并将其写入文件系统,然后使用返回的响应对象进行进一步处理。
我知道我可以直接通过管道传递响应对象,但之后我没有更多响应对象可供进一步处理
var result = await request(builtReq).pipe(fs.createWriteStream(myFilePath));
所以我现在的实现是这样的:
var result = await request(builtReq);
但我无法通过管道传输结果对象,因为可流式状态为 false。
所以我需要一种方法来保持请求的返回并将文件写入文件系统。我可以重置流状态或以某种方式保留响应 obj 并同时写入文件吗? 我试图通过手动实现写入文件。 fs.writeFile() 在我收到响应 obj 后,但我遇到了文件编码问题,因为我可以接收任何内容,但我最终得到了损坏的文件。
有人知道如何解决这个问题吗?
【问题讨论】: