Express.js - 任何显示文件/目录列表的方式?

新手上路,请多包涵

使用 Express.js ,当您访问没有索引文件的目录的 URL 时,是否可以像 apache 一样显示文件/目录列表 - 所以它会显示所有目录内容的列表?

是否有一个我不知道的扩展或包可以做到这一点?还是我必须自己编写代码?

原文由 balupton 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 819
2 个回答

从 Express 4.x 开始,目录中间件不再与 express 捆绑在一起。您需要下载 npm 模块 serve-index

然后,例如,要在名为 videos 的应用程序根目录中显示文件/目录列表,如下所示:

     var serveIndex = require('serve-index');

    app.use(express.static(__dirname + "/"))
    app.use('/videos', serveIndex(__dirname + '/videos'));

原文由 jbll 发布,翻译遵循 CC BY-SA 3.0 许可协议

目录列表有一个 名为 directory ( source ) 的全新默认 Connect 中间件。它有很多风格,并且有一个客户端搜索框。

 var express = require('express')
  , app = express.createServer();

app.configure(function() {
  var hourMs = 1000*60*60;
  app.use(express.static(__dirname + '/public', { maxAge: hourMs }));
  app.use(express.directory(__dirname + '/public'));
  app.use(express.errorHandler());
});

app.listen(8080);

原文由 yonran 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题