如果要下载进度,请尝试以下操作:
var fs = require('fs');
var request = require('request');
var progress = require('request-progress');
module.exports = function (uri, path, onProgress, onResponse, onError, onEnd) {
progress(request(uri))
.on('progress', onProgress)
.on('response', onResponse)
.on('error', onError)
.on('end', onEnd)
.pipe(fs.createWriteStream(path))
};
如何使用:
var download = require('../lib/download');
download("https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png", "~/download/logo.png", function (state) {
console.log("progress", state);
}, function (response) {
console.log("status code", response.statusCode);
}, function (error) {
console.log("error", error);
}, function () {
console.log("done");
});
注意:您应该使用以下命令安装请求和请求进行模块:
npm install request request-progress --save
0
我正在尝试编写脚本以使用node.js下载图像。这是我到目前为止的内容:
但是,我想使它更强大:
binary
编码将被弃用。那我该怎么办?原因:对于类似于imgur的功能(用户可以给我一个URL),我下载了该图像,然后以多种尺寸重新托管该图像。