В лбой папке создаём package.json
{
"name": "static-file-fun",
"private": true,
"scripts": {
"start": "node app.js"
}
}
var express = require("express");
var morgan = require("morgan");
var path = require("path");
var fs = require("fs");
var app = express();
app.use(morgan("short"));
app.use(function(req, res, next) {
console.log("Request IP: " + req.url);
console.log("Request date: " + new Date());
next();
});
app.use(function(req, res, next) {
var filePath = path.join(__dirname, "static");
//Тут https://expressjs.com/en/4x/api.html поисковик на fs.stat ничего не выдаёт. Не знаю как определить err, fileInfo
fs.stat(filePath, function(err, fileInfo) {
if (err) {
//next();
return;
}
if (fileInfo.isFile()) {
res.sendFile(filePath);
} else {
next();
}
});
});
app.use(function(req, res) {
res.status(404);
res.send("File not found!");
});
app.listen(3000, function() {
console.log("App started on port 3000");
});
Вот ещё загадка.
console.log(fs) => {....stat: [Function: stat],...}