2016-12-19 54 views
2

对于一个项目,我必须通过隐式连接连接到FTPS服务器。 我试过使用node-ftp,因为它似乎是唯一支持隐式连接的库。如何使用nodeJS连接到隐式FTPS服务器?

我连接使用下面的代码:

var ftpC = new FTPClient(); 
    ftpC.on('ready', function() { 
    console.log('Connection successful!'); 
    }); 

    ftpC.on('error', function (err) { 
    console.log(err); 
    }); 

    console.log('Try to connect to FTP Server...'); 
    ftpC.connect({ 
    host: HOST_TO_CONNECT, 
    port: 990, 
    secure: 'implicit', 
    user: '***', 
    password: '***', 
    secureOptions: { 
     rejectUnauthorized: false 
     // secureProtocol: 'SSLv23_method', 
     // ciphers: 'ECDHE-RSA-AES128-GCM-SHA256' 
    } 
    }) 

此代码给我每次超时错误。如果我提高超时时间,错误会在稍后出现。 我secureOptions试图添加PARAMS rejectUnauthorizedsecureProtocol密码,你可以看到。他们都没有工作。每当我得到这个超时错误。

在FileZilla中我没有问题连接。一切工作正常。

有人有这种行为的解决方案吗? 或者是否有另一个nodejs插件连接到隐式FTPS服务器?

+0

如果为“greeting”节点事件或“secureConnect”事件,例如ftpC.on(“greeting”,function)添加事件侦听器,是否会看到任何记录(文本){'或'ftpC.on(“secureConnect”,函数(...)',获取更多信息? – Castaglia

回答

1

这似乎是node-ftp中的一个错误。我已经创建了一个PR for it,并会在更新后立即更新。