2016-08-16 2 views
1

옥에서 서버쪽으로 파일 경로를 전달하고 있습니다. 그것은 다운로드를 시작하려면 페이지를 새로 고침해야합니다. 파일 경로가 너무 늦게 index.js로 돌아 간다고 생각해? 해결 방법이 있습니까?페이지를 다시로드 한 후에 만 ​​다운로드 (node.js)

하는 index.js

router.get('/download', function(req, res){ 
    var file = req.query.name; 
    res.download(file); 
}); 

또한이 기본값 대신 헤더를 사용할 수 있습니다

a(href="/download?name=" +encodeURIComponent(parentFiles[j].children[i].path)) 

답변

0

index.jade 내가 첫 번째 시도

var path = require('path'); 
var mime = require('mime'); 

app.get('/download', function(req, res){ 

    var file = req.query.name; 

    var filename = path.basename(file); 
    var mimetype = mime.lookup(file); 

    res.setHeader('Content-disposition', 'attachment; filename=' + filename); 
    res.setHeader('Content-type', mimetype); 

    var filestream = fs.createReadStream(file); 
    filestream.pipe(res); 
}); 
+0

res.download 사실 .. 같은 일이 일어난다. – bobby

관련 문제