2016-12-19 56 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,並會在更新後立即更新。