Con*_*nor 3 javascript node.js
我最近询问/接受了我之前的一个问题的答案:我如何使用nodejs复制wget的功能.
现在,我的脚本运行正常,但我希望能够向用户显示下载的百分比.我不确定这是否暴露给我们(我没有在文档中看到它),但我想我还是会在这里问.会爱一些帮助!
谢谢!
是的你可以.随着child_process.spawn.尽管child_process.exec执行该命令并缓冲输出,spawn为您提供有关事件data,error和end.所以你可以听取并计算你的进度.spawn的节点文档中有一个基本示例.
更新:我看到了你的另一个问题.您可以使用wget此功能,但我建议使用nodejs模块请求.以下是如何使用请求获取文件:
var request = require("request");
request(url, function(err, res, body) {
// Do funky stuff with body
});
Run Code Online (Sandbox Code Playgroud)
如果要跟踪进度,可以将回调传递给onResponse:
function trackProgress(err, res) {
if(err)
return console.error(err);
var contentLength = parseInt(res.headers["content-length"], 10),
received = 0, progress = 0;
res.on("data", function(data) {
received += data.length;
progress = received / contentLength;
// Do funky stuff with progress
});
}
request({url: url, onResponse: trackProgress}, function(err, res, body) {
// Do funky stuff with body
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2588 次 |
| 最近记录: |