javascript node ftp client // 插件地址,详细看下方法和参数:// https://github.com/mscdex/node-ftp// 导入包let Client = require('ftp');let fs = require('fs');// 配置信息,可以由java生成let config = { "host":"192.1
// 插件地址,详细看下方法和参数: // https://github.com/mscdex/node-ftp // 导入包 let Client = require('ftp'); let fs = require('fs'); // 配置信息,可以由java生成 let config = { "host":"192.168.0.190", "port":21, "user":"www", "password":"www" }; // 创建一个ftp客户端对象 let c = new Client(); c.on('ready', function() { // 获取文件列表 c.list(function(err, list) { if (err) throw err; console.dir(list); c.end(); }); // 下载一个文件 // 在stream中可以获取进度,见stream.on data c.get('cdms/004.jpg', function(err, stream) { if (err) throw err; // buffer为获取的缓冲区块 let progress = 0 stream.on('data', buffer => { progress += buffer.length // 这里可以计算下百分比,我这里直接输出大小了 console.log(progress); }) stream.once('close', function() { c.end(); }); stream.pipe(fs.createWriteStream('004.jpg')); }); // 上传一个文件 // 直接指定一个文件路径,无法获取进度 // 要获取进度需要用到Readable,参考上面get写法 // Readable对应于Java中的InputStream和Reader两个类 c.put('004.jpg', 'cdms/new.jpg', function(err) { if (err) throw err; c.end(); }); }); // 开始连接 c.connect(config);