Express 自定义中间件 实现中间件访问静态文件,实现日志的实时保存
在Express中,可以通过自定义中间件来实现对静态文件的访问,并将日志实时保存到文件中。以下是一个简单的示例:
const express = require('express');
const fs = require('fs');
const path = require('path');
const app = express();
// 自定义日志中间件
const logger = (req, res, next) => {
const logLine = `${new Date().toISOString()} - ${req.method} ${req.url}`;
// 将日志追加到日志文件
fs.appendFile('logs.txt', logLine + '\n', (err) => {
if (err) throw err;
});
next();
};
// 使用日志中间件
app.use(logger);
// 设置静态文件目录
app.use(express.static('public'));
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
在这个示例中,我们创建了一个名为logger
的中间件,它记录每个请求的时间戳和HTTP方法、URL,并将这些信息追加到logs.txt
文件中。然后,我们在应用程序中使用这个中间件,并设置静态文件目录public
。当访问静态文件或页面时,会通过logger
中间件记录日志,并实时保存到logs.txt
文件中。
评论已关闭