2017-06-14 102 views
2

我正在使用node.js和express。我想在服務器上創建一個文件,然後在終點點擊時下載。 這是我現在的代碼。如何使用快遞從服務器上下載文件

router.get('/download', (req, res) => { 
const fileController = new FileController(); 
    fileController.generateJSONFile() 
    .then((file) => { 
    fs.writeFile('fooFile.json', file, 'utf8'); 
    }).then((success) => { 
    res.download('fooFile.json'); 
    }) 
    .catch((error) => { 
    res.status(500).send(); 
}); 
}); 

我也想在下載完成後立即將文件從服務器上刪除。

如果有更好的方法來實現這個目標,我不需要使用res.download()。

回答

2

這會有幫助嗎?這應該告訴瀏覽器將文件下載爲fooFile.json。這不需要保存臨時文件。如果你只是想發送json

res.setHeader('Content-Type', 'application/json; charset=utf-8'); 
res.send(file); 
相關問題