我有一个Electron应用程序,它将一个删除的文件上传到预定义的服务器
node-ftp.上传就像一个魅力,但尽管阅读了一些建议,我无法弄清楚如何获得有关进度条实际进度的信息.
我的上传代码到目前为止:
我的上传代码到目前为止:
var ftp = new Client(); let uploadfile = fs.createReadStream(f.path); let newname = uuid(); //some function I use for renaming ftp.on('ready',function () { ftp.put(uploadfile,newname,function (err) { if (err) throw err; ftp.end(); }); }); c.connect({user: 'test',password: 'test'});
我总是偶然发现监控“数据”事件,但无法找到访问它的方式或位置(正如您所看到的,我对JavaScript很新).
解决方法
得到它了.我在
streams with percentage complete找到了答案
我的代码改为
var ftp = new Client(); let uploadfile = fs.createReadStream(f.path); let newname = uuid(); //some function I use for renaming ftp.on('ready',function() { uploadfile.on('data',function(buffer) { var segmentLength = buffer.length; uploadedSize += segmentLength; console.log("Progress:\t((uploadedSize/f.size*100).toFixed(2)+"%")); }); ftp.put(uploadfile,function(err) { if (err) throw err; ftp.end(); }); }); c.connect({user: 'test',password: 'test'});