我需要藉助node.js來獲取文件的文件類型以設置內容類型。我知道我可以很容易地檢查文件擴展名,但我也有沒有擴展名的文件,其內容類型應該是image/png
,text/html
aso。Node.js - 文件系統獲取文件類型
這是我的代碼(我知道這並沒有太大的意義,但是這就是我需要的基礎):
var http = require("http"),
fs = require("fs");
http.createServer(function(req, res) {
var data = "";
try {
/*
* Do not use this code!
* It's not async and it has a security issue.
* The code style is also bad.
*/
data = fs.readFileSync("/home/path/to/folder" + req.url);
var type = "???"; // how to get the file type??
res.writeHead(200, {"Content-Type": type});
} catch(e) {
data = "404 Not Found";
res.writeHead(404, {"Content-Type": "text/plain"});
}
res.write(data);
res.end();
}).listen(7000);
我還沒有找到一個函數,該函數在API,所以我會很高興如果有人能告訴我該怎麼做。
'readFileSync' on每個請求?聽起來不是一個好主意...... – ThiefMaster
@ThiefMaster正如他所說,這只是虛擬代碼(至少這就是我認爲的「我知道這並沒有多大的意義,但這是我需要的基礎」意思是)。 –