2016-01-06 132 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

我得到了那個工作,我想..現在它只是告訴我「你正在尋找的資源已被刪除,名稱已更改,或暫時不可用。」不知道他在說什麼 –

相關問題