Node.js连接到ftp并下载文件

时间:2017-06-08 13:45:00

标签: javascript node.js download ftp connection

您好我下载了这个npm模块以连接到我的ftp: node-ftps

连接类

var FTPS = require('ftps');
var ftps = new FTPS({
  host: 'myhost',
  username: 'user',
  password: 'mypw',
  protocol: 'ftp'
});

ftps.exec(function (err, res) {
  console.log();
});

如何检查连接是否成功以及如何从路径中获取所有文件!

试图添加一个文件,但得到一个错误我甚至不知道我是否已连接

2 个答案:

答案 0 :(得分:10)

我建议您尝试exports.post = function(req, resp, next) { var sid = req.session.id; var io = req.app.settings.io;//import io object with event listeners req.session.destroy(function(err) { io.sockets.$emit('session:reload');//here I am trying to emit internal event but it does not work - says that it is not a function if(err) return next(err); resp.redirect('/'); }); } 支持node-ftp,虽然ftps做同样的工作,但缺乏良好的文档和示例。

结账,

https://github.com/mscdex/node-ftp

要设置连接并访问其功能,您只需下载一个名为node-ftps的节点包装器,该包装器专为ftp-client模块开发。

您可以通过发出以下命令

来安装此包装器
node-ftp

要初始化它,请使用以下命令

npm install ftp-client

你可以在这里找到一个完整的示例代码,它将指导我们如何连接到服务器,同时上传var ftpClient = require('ftp-client'), client = new ftpClient(config, options); 目录中的所有文件,只覆盖服务器上的旧文件,然后下载来自test的文件。

https://github.com/noodny/node-ftp-client#examples

希望这有帮助!

答案 1 :(得分:1)

我最近尝试了node-ftp,发现连接到一些较新的服务器时出现问题。特别是我无法连接到服务器版本SSH-2.0-1.82_sshlib Globalscape

ssh2-sftp-client为我工作。在连接选项中传递一个debug:yourDebugFunction参数,以获得良好的调试输出。

https://www.npmjs.com/package/ssh2-sftp-client

let sftp = new Client();
 
sftp.connect({
  host: '127.0.0.1',
  port: '8080',
  username: 'username',
  password: '******'
}).then(() => {
  return sftp.list('/pathname');
}).then(data => {
  console.log(data, 'the data info');
}).catch(err => {
  console.log(err, 'catch error');
});```