以下任务:
我们有一个nodejs客户端(守护进程)从Amazon S3下载包含在tar文件(NOT tar.gz - 它确实是未压缩的!)中的音频数据。
目前,我们将响应的“数据”处理程序中的块粘合在一起,将整个缓冲区作为文件保存到光盘,然后在新创建的文件上调用tar.Extract(inPath,outPath)。
我想跳过将数据写入光盘的过程,而是将响应中的数据直接传递给tar.Extract()。
这是我的处理程序代码:
var readResponseData = function (response) {
response.setEncoding('binary');
response.pipe(tar.Extract( { path: '/tmp/testyeah' }));
....
....
我总是得到“错误:无效的tar文件”
我也尝试了这个页面(https://groups.google.com/forum/#!topic/nodejs/A7jz6b9daZc)的建议但没有成功,尽管这应该适用于压缩的tar文件而不是我们使用的未压缩文件。
有什么建议吗?