Node.js
Node.js
FTP Download Binary File to a Stream
See more FTP Examples
Demonstrates how to FTP download a binary file to a Chilkat stream.Note: This example requires Chilkat v9.5.0.67 or greater.
Chilkat Node.js Downloads
NODEJS_PRELUDE
function chilkatExample() {
var success = false;
// This example assumes the Chilkat FTP2 API to have been previously unlocked.
// See FTP2 Unlock Sample for sample code.
var ftp = new chilkat.Ftp2();
ftp.Hostname = "www.my-ftp-server.com";
ftp.Username = "mFtpLogin";
ftp.Password = "myFtpPassword";
ftp.AuthTls = true;
ftp.Passive = true;
// Connect and login to the FTP server using TLS.
success = ftp.Connect();
if (success !== true) {
console.log(ftp.LastErrorText);
return;
}
// We'll read the incoming data chunk-by-chunk and write to an output file.
var fac = new chilkat.FileAccess();
success = fac.OpenForWrite("qa_output/penguins2.jpg");
if (success !== true) {
console.log(fac.LastErrorText);
return;
}
var streamObj = new chilkat.Stream();
// Create a task to do the FTP download.
// t: Task
var t = ftp.GetFileToStreamAsync("penguins2.jpg",streamObj);
if (ftp.LastMethodSuccess !== true) {
console.log(ftp.LastErrorText);
return;
}
// Start the task in a background thread.
t.Run();
var bd = new chilkat.BinData();
while (streamObj.EndOfStream !== true) {
// Get the next chunk of JPG bytes.
streamObj.ReadBd(bd);
// Do something with it..
// In this simple example, we'll just write to the file.
fac.FileWriteBd(bd,0,0);
// Clear for the next read.
bd.Clear();
}
fac.FileClose();
console.log("Success.");
}
chilkatExample();