从FTP下载并直接将其复制到Azure Blob / Amazon S3中,而无需将其存储在Node.js的本地系统中

问题描述 投票:0回答:1

我想使用Node.js从FTP下载文件并将其上传到Azure blob。我正在使用basic-ftp NPM列出并从FTP下载文件。

谁能提供一个如何将文件上传到Amazon S3 / Azure Blob存储而不将其存储到本地系统的小例子?

node.js azure ftp
1个回答
0
投票

您可以尝试下面的代码,我下载了一个ftp文件test.txt,并将该流上传到Blob,这可能对我有用。

var Client = require('ftp');
var fs = require('fs');

var azure = require('azure-storage');
accountName="account name"
accountKey="account key"
var blobService = azure.createBlobService(accountName,accountKey);
let connection={
    "host":"ftp host",
    "port":"21",
    "user":"user name",
    "password":"pass word"
}
var c=new Client();


c.on('ready', function() {
    c.get('test.txt', function(err, stream) {
      if (err) throw err;

      stream.once('close', function() { c.end(); });
      stream.pipe(blobService.createWriteStreamToBlockBlob("test","test.txt"))

    });
  });
  c.connect(connection);
© www.soinside.com 2019 - 2024. All rights reserved.