nodejs请求并保存图片

原文来自:snippets.barretlee.com,只是为了自己学习收集特意fork了一遍。如有侵权,联系删除:i@webcliwn.net
最直接的方式是:

1
2
request('http://google.com/doodle.png')
.pipe(fs.createWriteStream('doodle.png'));

但是有的时候需要异步获取,所以需要用其他方式处理:

1
2
3
4
5
6
7
8
9
10
new Promise(function(resolve, reject){
request({
url: 'http://barretlee.com/avatar.png',
encoding: 'binary'
}, function(err, res, body) {
resolve(body);
});
}).then(function(body){
fs.writeFileSync('avatar.png', body, 'binary');
})