下载镜像后的回调函数



我正在尝试使用请求模块保存图像下载。有了这个

request('http://google.com/images/logos/ps_logo2.png').pipe(fs.createWriteStream('doodle.png')); 

它工作正常。但是我希望在图像完全下载后能够做其他事情。如何向 fs.createWriteStream 提供回调函数?

您希望提前创建流,然后对关闭事件执行某些操作。

var picStream = fs.createWriteStream('doodle.png');
picStream.on('close', function() {
  console.log('file done');
});
request('http://google.com/images/logos/ps_logo2.png').pipe(picStream); 

这应该可以做到。

收到此错误的人必须尝试在方法 fs.createWriteStream(1,2) 的第二个输入参数中添加一个函数,如下例所示,这也适用于 fs.unlink 方法。请注意,添加的这个新函数什么都不返回,但它是必要的,如果需要,您也可以添加一些东西来返回,而不是在我的情况下。

request('http://google.com/images/logos/ps_logo2.png').pipe(fs.createWriteStream('doodle.png'), function(err){});

最新更新