如何使用javascript在Node.js中创建FTP客户端?

更新于
2026-09-29 13:35:51
2阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计467个文字,预计阅读时间需要2分钟。

如何使用javascript在Node.js中创建FTP客户端?

使用 `javascript` 和 `node-ftp` 插件连接 FTP 服务器:

- 插件地址:[node-ftp](https://github.com/mscdex/node-ftp)- 导入包:`let Client=require('ftp'); let fs=require('fs');`- 配置信息:`let config={ host: 192.1 };`

javascriptconst Client=require('ftp');const fs=require('fs');

// 配置信息let config={ host: 192.1 };

// 创建 FTP 客户端实例let ftp=new Client();

// 连接 FTP 服务器ftp.connect(config, (err)=> { if (err) { console.error('连接失败:', err); return; } console.log('连接成功');

// 登录 FTP 服务器 ftp.login('用户名', '密码', (err)=> { if (err) { console.error('登录失败:', err); ftp.end(); return; } console.log('登录成功');

// 上传文件 let filePath='本地文件路径'; let fileName='文件名'; ftp.put(filePath, fileName, (err)=> { if (err) { console.error('上传失败:', err); ftp.end(); return; } console.log('上传成功');

// 下载文件 let downloadPath='本地下载路径'; ftp.get(fileName, (err, stream)=> { if (err) { console.error('下载失败:', err); ftp.end(); return; } stream.pipe(fs.createWriteStream(downloadPath)); stream.on('end', ()=> { console.log('下载成功'); ftp.end(); }); }); }); });});

如何使用javascript在Node.js中创建FTP客户端?

javascript node ftp client

// 插件地址,详细看下方法和参数: // 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);

本文共计467个文字,预计阅读时间需要2分钟。

如何使用javascript在Node.js中创建FTP客户端?

使用 `javascript` 和 `node-ftp` 插件连接 FTP 服务器:

- 插件地址:[node-ftp](https://github.com/mscdex/node-ftp)- 导入包:`let Client=require('ftp'); let fs=require('fs');`- 配置信息:`let config={ host: 192.1 };`

javascriptconst Client=require('ftp');const fs=require('fs');

// 配置信息let config={ host: 192.1 };

// 创建 FTP 客户端实例let ftp=new Client();

// 连接 FTP 服务器ftp.connect(config, (err)=> { if (err) { console.error('连接失败:', err); return; } console.log('连接成功');

// 登录 FTP 服务器 ftp.login('用户名', '密码', (err)=> { if (err) { console.error('登录失败:', err); ftp.end(); return; } console.log('登录成功');

// 上传文件 let filePath='本地文件路径'; let fileName='文件名'; ftp.put(filePath, fileName, (err)=> { if (err) { console.error('上传失败:', err); ftp.end(); return; } console.log('上传成功');

// 下载文件 let downloadPath='本地下载路径'; ftp.get(fileName, (err, stream)=> { if (err) { console.error('下载失败:', err); ftp.end(); return; } stream.pipe(fs.createWriteStream(downloadPath)); stream.on('end', ()=> { console.log('下载成功'); ftp.end(); }); }); }); });});

如何使用javascript在Node.js中创建FTP客户端?

javascript node ftp client

// 插件地址,详细看下方法和参数: // 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);