我正在尝试在浏览器中查看点击特定网址时的日志文件。我的本地日志文件 (/logsFolder/app.log)
我尝试了以下代码: 代码:1
var app = express();
var path = require('path');
var logFile = require('/logs/app');
app.use('/logs',logFile);
它抛出了类似的错误
Error: Cannot find module '/logs/app'
代码:2
const app = express();
const path = require('path');
const router = express.Router();
router.get('/logFile', function(req, res){
console.log("inside logt :");
res.render('./logs/app.log');
});
任何人都可以帮我解决吗?
最佳答案
您的日志是静态文本文件,不是 javascript,也不是 json 文件,这就是为什么您不能要求它。 (代码1)
您没有使用template engine或者,这就是为什么你的代码 2 不起作用,它无法自行渲染。
您可以对静态文件使用内置的 express
中间件。
试试这个:
app.use(express.static('logsFolder'))
现在您可以通过请求文件名来访问logsFolder
的所有内容。例如:http://your-url/app.log
或者尝试使用 res.sendFile
而不是 res.render
的代码 2
关于node.js - 如何通过url在node js中渲染日志/文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55089748/