0
我有一個本地文件下載,它以下列方式觸發。Heroku文件上傳
panelBody.append('<button onclick="downloadCsv(\''+skl+'\')">Download csv</button>')
function downloadCsv(data){
var filename=data+'_report.csv'
var form = $('<form>', {action: '/admin/download', method: 'GET'});
form.append($('<input>', {name: 'file_name', value: filename}));
form.submit();
return false;
}
router.get('/download',helper.isSchoolAdmin,feedController.downloadCsv);
downloadCsv:function(req,res){
var fileName = process.cwd()+'/reports/'+ req.query.file_name;
res.download(fileName,function(err){
if(!err)console.log('down')
});
}
該文件本身被寫入到前一個請求中的指定路徑到不同的路由。 現在這工作正常我的本地..我的問題是,一旦我將它部署到heroku會發生什麼?我的文件上傳和下載仍然有效,因爲我已經讀過,heroku使用一個ephimeral文件系統,它只允許寫入一個tmp目錄。
如果是這樣的話,是否有人可以引導我完成如何通過節點寫入該目錄......還有,文件最終會在我下載之前被刪除,因爲上傳和下載都是部分單獨的請求?謝謝。
是否確定上傳和讀取文件,(如CSV),然後讓系統中刪除?我並不擔心保存文件 - 只是將內容和POST發送到api。謝謝。 – joshlsullivan
是的,沒關係。只要你不希望文件在請求持續時間後仍然在文件系統中。 –
太棒了。感謝您的答覆。 – joshlsullivan