程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 後台-node.js的express用sendFile()發送文件為什麼提示錯誤?

後台-node.js的express用sendFile()發送文件為什麼提示錯誤?

編輯:編程解疑
node.js的express用sendFile()發送文件為什麼提示錯誤?

node.js代碼如下:

 var express = require('express');
var app = express();

app.use(express.static(__dirname + '/public'));

app.listen(8080);

app.get('/download/mobileapp.rar',function(req, res, next){ //地址省略根目錄
    console.log("下載文件");
    res.sendFile('./download/模擬下載包.rar');
    //next();
});
app.get('*',function(req, res){     //輸入錯誤地址等情況
    res.end('<h1>404 Not Found!</h1>')
});

console.log('Server is running on port 8080.');

目錄結構:

圖片說明

浏覽器點擊下載網址:

圖片說明

提示錯誤:

圖片說明

最佳回答:


你的錯誤提示已經說明的很清楚了,路徑只能是絕對路徑,或者你在res.sendFile指定根目錄,你下面的路徑是相對路徑。

 res.sendFile('./download/模擬下載包.rar');

改成下面的試試:

 res.sendFile('download/模擬下載包.rar' , { root : __dirname});
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved