在我的 node.js 应用程序中使用 express 和 ejs 渲染文件夹内容,例如 mod_autoindex

Rendering folder contents like mod_autoindex with express and ejs in my node.js app

我一直在使用 express 和 ejs 在 /public 文件夹中呈现原始 html 文件。

例如,要渲染 http://localhost:3000/index.html,我有:

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

app.engine('.html', ejs.__express);
app.set('views', __dirname + '/public');  
app.set('view engine', 'html');

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

并且可以呈现来自 /public:

的文件
% find public/
public/index.html
public/favicon.ico
public/stylesheets
public/stylesheets/style.css
public/images
public/images/banner.gif

我希望能够呈现文件夹内容,如 http://localhost:3000/images/,完全像 Apache 模块 mod_autoindex,table 文件作为显示目录内容的链接。

有办法吗?

答案很简单,搜索 npm 库即可。

https://www.npmjs.com/package/mod_autoindex 就可以了。