nodejs jquery下载本地文件 webstorm

来源:互联网 发布:unity3d塔防游戏案例 编辑:程序博客网 时间:2024/05/21 10:02

1.使用form表单提交的方式(ajax提交不行)

$("#downloadTest").click(function() {    $('#hidden_iframe').remove();    var iframe = $('<iframe id="hidden_iframe" style="display:none;"></iframe>');    var form = $('<form></form>')        .attr('target','hidden_iframe')        .attr('action','/service/downloadFile')        .attr('method', 'get');
    var input = $('<input />').attr('name','fileName').attr('value', '@fileName').appendTo(form);    iframe.append(form).appendTo(document.body);    iframe.on('load', function() {        window.reload();    })    $(form).submit();})

2.后台(express通过路由找到/service/downloadFile接口对应的download方法

var path = require('path');exports.download = function(req, res) {    var paths = path.join('D:/opt/files/event/28', 'tnsnames.ora');    res.download(paths,function(err, data) {        if(err) {            console.log('download faied');            res.sendStatus(404);        }    })}

原创粉丝点击