我正在尝试将csv文件发送给客户端。
当我这样做时,下载开始,但挂起“开始....”并说它以0B / s发送。
当我杀死服务器时,文件被传输并且全部存在。
造成这种情况的原因是什么?
app.get('/weather_log.csv', function(req, res){
console.log('sending weather log')
filePath = 'weather_log.csv'
var file = fs.readFileSync(filePath, 'binary');
console.log(typeof(file))
res.setHeader('Content-Length', fs.statSync(filePath));
res.setHeader('Content-Type', 'text/csv');
res.setHeader('Content-Disposition', "attachment;filename=" + filePath);
res.write(file, 'binary');
res.end();
})
我的猜测是res.end()没有触发,或者客户端没有意识到由于其他原因文件传输没有完成。
答案 0 :(得分:0)
根据a0js,答案是使用res.download(filePath)。