2016-01-06 138 views
0

我问各种问题,并得到了有限的答案,它已经得到了我到这地步: 猫鼬代码:下载从MongoDB的文件到本地文件系统

app.get('/Download/:file(*)', function (req, res) { 
    grid.mongo = mongoose.mongo; 
    var gfs = grid(conn.db); 
    var file = req.params.file 
    var fs_write_stream = fs.createWriteStream('Program.cs'); 

    var readstream = gfs.createReadStream({ filename: file }); 

    readstream.pipe(fs_write_stream); 

    res.download(__dirname+'/Program.cs', 'Solution.cs', function (err) { 
     if (err) throw err; 
     else console.log("check console"); 
    }); 
}) 

角码:

$scope.Download = function() { 
     $http.get(url + "/Download/"+"Program.cs") 
     .success(function (res) { 
      console.log(res); 
     })} 

当我打开我的控制台角度只是返回一个空行,当我看着网络方面的标题是这样的:


Response Header

我希望能够将此文件存储到我的本地文件系统中,以便我可以选择我自己的路径。请帮助我,我很绝望,我已经寻找解决方案的每个地方,非常感谢你提前!

+0

你谈到了*服务器上的本地文件系统*或*客户端*? (后者应该是不可能的,因为网站不能告诉网络浏览器在哪里保存文件) – Philipp

+0

我只想让客户端能够下载存储在我的mongodb中的文件,就像任何其他允许您下载的网站一样像.pdf或.txt文件 –

回答

0

试试这个,而不是你的客户端下载的尝试:

<a class="btn" href="/Download/Program.cs" download>

+0

给我这个错误:“HTTP错误404.7 - 未找到 请求筛选模块被配置为拒绝文件扩展名。”这可能是因为它是'.cs'文件..但这就是我想要下载它的方式。这是因为这是我的网站的重点。教师应该下载这些'.cs'文件,以便他们可以运行代码并更正需要配置服务器服务器的必要信息 –

+0

。 http://stackoverflow.com/questions/13455939/http-error-404-7-not-found-the-request-filtering-module-is-configured-to-deny – Yerken

+0

我得到了那个工作,我想..现在它只是告诉我“你正在寻找的资源已被删除,名称已更改,或暂时不可用。”不知道他在说什么 –

相关问题