2016-08-13 161 views
1

我有一個web應用程序,它在按鈕上單擊調用REST API,它可以獲取ftp服務器中可用的文件列表,並在文件名中使用超鏈接顯示div,如下所示。從nodejs中的ftp服務器下載文件

爲此,我使用jsftp模塊。

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

我還有一個REST API從FTP服務器下載文件,該文件調用的名稱點擊出現在DIV文件,但它是在本地目錄中下載了其中的Web應用程序在用戶系統與下面的代碼部署和不是,但我想當用戶點擊文件名時,該文件應該在用戶系統或計算機中下載。我如何才能做到這一點。

ftp.get('remote/file.txt', 'local/file.txt', function(hadErr) { 
if (hadErr) 
    console.error('There was an error retrieving the file.'); 
else 
    console.log('File copied successfully!'); 
}); 

回答

1

現在該文件在您的機器上,您將希望實際上將文件傳輸到客戶端,當他們點擊鏈接時。使用res.write類似:res.write(file, 'binary');

這裏有,你會發現一些有用的概念:Node.js send file to client

+0

謝謝你的建議,解決我的問題。我只是使用res.download(路徑); – ppb

相關問題