Alex
Alex

Reputation: 467

Node.js connect to ftp and download files

Hello i downloaded this npm module to connect to my ftp : node-ftps

connection class

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

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

how can i check if the connection was successful and how can i get all files from my path!

tryed to add an file but get an error i didn't even know if im connected

Upvotes: 9

Views: 65961

Answers (2)

Dmitri R117
Dmitri R117

Reputation: 2832

I have recently tried node-ftp and found that is has issues connecting to some newer servers. Particularly I had no ability to connect to a server version SSH-2.0-1.82_sshlib Globalscape

ssh2-sftp-client worked for me. Pass a debug:yourDebugFunction parameter in the connect options for good debugging output.

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');
});```

Upvotes: 6

David R
David R

Reputation: 15667

I would advice you to try node-ftp which supports ftps too, Although node-ftps does the same work, it lacks good documentation and examples.

Checkout here,

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

To setup a connection and to access it features, All you need to do is to download a node wrapper called ftp-client which is developed exclusively for the node-ftp module.

You can install this wrapper by issuing the below command,

npm install ftp-client

To initialize it use the below command,

var ftpClient = require('ftp-client'),
client = new ftpClient(config, options);

And you can find a complete example code here which will walk you through how we can connect to a server, and simultaneously upload all files from the test directory, overwriting only older files found on the server, and download files from /public_html/test directory.

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

Hope this helps!

Upvotes: 19

Related Questions