nodejs request模块 如何流式下载文件

在http模块中 我chunk下载文件 然后创建文件夹把文件存在文件夹里

http.get(src,(res)=>{
    res.on('data',(chunk)=>{
        file += chunk;
    })
    
    res.on('end',()=>{
        var filep = Math.random();
        if(!fs.existsSync(filep)){ //每个文件创建一个文件夹
            var creats = fs.mkdirSync(filep);
            }
        fs.writeFile(filep+'a.mp4',file,(err)=>{
            if (err) throw err;
        });
    })
})

但在request模块里
request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'))
这种方式 我无法创建文件夹 存储文件 我应当 如何在request 完成如上http模块类似的操作

阅读 12.6k
3 个回答

试了下好像createWriteStream的path一定是要存在的,不会创建文件夹,要么创建文件夹这一步就不要放到pipe里去做了?提前生成好

在创建文件之前,先检查文件夹时候存在,如果不存在就创建。然后再进行request请求

有暂停下载功能吗 ?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题