2016-08-13 26 views
1

私はボタンをクリックしてftpサーバーで利用可能なファイルのリストを取得し、以下のようにファイル名にハイパーリンクを持つdivに表示されるREST APIを呼び出すWebアプリケーションを持っています。nodejsのftpサーバーからファイルをダウンロード

これはjsftpモジュールを使用しています。

ftp.ls(".", function(err, res) { 
    res.forEach(function(file) { 
    console.log(file.name); 
    //logic to display in div 
}); 
}); 

私はdiv要素に存在するファイル名のクリックで呼び出されたが、それはコードの下でローカルディレクトリどこのWebアプリケーションのデプロイではなく、ユーザーのシステムにダウンロードされるFTPサーバからダウンロードしたファイルのための別のREST APIを持っていますが、私が欲しいですユーザーがファイルまたはユーザーのシステムまたはコンピュータでダウンロードする必要があるファイル名をクリックしたとき。どのように私はこれを達成することができます。

答えて

1

これで、ファイルがマシン上にあるので、リンクをクリックしたときにファイルを実際にクライアントに送信することになります。以下のようなres.write何かの使用:ここでres.write(file, 'binary');

ことはあなたが役立つだろういくつかの概念です:Node.js send file to client

+0

あなたの提案は私の問題を解決する、ありがとう。私は単純にres.download(パス)を使用しています。 – ppb

関連する問題