const writer = fsx.createWriteStream(file)
axios
.get(url, {
responseType: 'stream',
...options
})
.then((res) => {
res.data.pipe(writer)
writer.on('error', (err) => {
utils.log(`download error`, err)
reject(err)
})
writer.on('finish', (res) => {
utils.log(`download finish`, res)
resolve(res)
})
writer.on('close', (err) => {
utils.log(`download close`, err)
})
res.data.on('error', (err) => {
utils.log(`download error2`, err)
})
res.data.on('end', (err) => {
utils.log(`download end`, err)
})
res.data.on('aborted', (err) => {
utils.log(`download aborted`, err)
})
res.data.on('close', () => {
if (res.request.aborted) {
utils.log('download aborted')
} else {
utils.log('download completed')
}
})
})
[info] download aborted undefined
[info] download end undefined
[info] download completed
[info] download finish undefined
[info] download close undefined
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.