原理
- 將response的header設置爲瀏覽器不能識別的,瀏覽器則不會渲染該內容,而是下載文件
實現【注意自己引入相應模塊】
- 方法一:
let _path = path.resolve(__dirname, 'e-router'+'.js')
let stats=fs.statSync(_path)
if(stats.isFile()){
res.set({
'Content-Type': 'application/octet-stream',
'Content-Disposition': 'attachment; filename=' + 'e-router'+'.js',
'Content-Length': stats.size
});
fs.createReadStream(_path).pipe(res);
}else{
console.log('導出的不是文件!')
}
- 方法二
res.download(_path,function(err){
if(err){
console.log(err);
}
});