已完成百分比的流

2024-03-08

我需要使用类似的方法将 base64 格式的文件流式传输到 http 端点request https://github.com/mikeal/request or 超级代理人 https://github.com/visionmedia/superagent。确定文件已上传百分比的最佳方法是什么?

我假设我可以使用类似以下内容创建读取流:

fs.createReadStream('/tmp/cats.jpg', {encoding: 'base64'})

任何使用上述库之一的示例将不胜感激。


我想你可以使用进度流 https://www.npmjs.com/package/progress-stream.

这是包中的示例:

var progress = require('progress-stream');
var fs = require('fs');
 
var stat = fs.statSync(filename);
var str = progress({
    length: stat.size,
    time: 100 /* ms */
});
 
str.on('progress', function(progress) {
    console.log(progress);
 
    /*
    {
        percentage: 9.05,
        transferred: 949624,
        length: 10485760,
        remaining: 9536136,
        eta: 42,
        runtime: 3,
        delta: 295396,
        speed: 949624
    }
    */
});
 
fs.createReadStream(filename)
    .pipe(str)
    .pipe(fs.createWriteStream(output));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

已完成百分比的流 的相关文章

随机推荐