使用Express.js有一种方法来显示像apache一样的文件/目录列表,当你访问没有索引文件的目录的URL时 - 所以它显示所有目录内容的列表?
是否存在我不知道的扩展或包裹?或者我自己要编码吗?
干杯们,你摇滚!:)
yon*_*ran 44
有一个全新的默认Connect中间件名为directory
(源),用于目录列表.它有很多风格,并有一个客户端搜索框.
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);
Run Code Online (Sandbox Code Playgroud)
jbl*_*bll 39
从Express 4.x开始,目录中间件不再与express捆绑在一起.您需要下载npm模块serve-index.
然后,例如,要在应用程序根目录下的目录中显示文件/目录列表,videos
如下所示:
var serveIndex = require('serve-index');
app.use(express.static(__dirname + "/"))
app.use('/videos', serveIndex(__dirname + '/videos'));
Run Code Online (Sandbox Code Playgroud)
Tal*_*Kit 13
以下代码将同时提供目录和文件
var serveIndex = require('serve-index');
app.use('/p', serveIndex(path.join(__dirname, 'public')));
app.use('/p', express.static(path.join(__dirname, 'public')));
Run Code Online (Sandbox Code Playgroud)
这将为您完成工作:(新版本的 express 需要单独的中间件)。例如,您将文件放在文件夹“files”下,并且希望 url 为“/public”
var express = require('express');
var serveIndex = require('serve-index');
var app = express();
app.use('/public', serveIndex('files')); // shows you the file list
app.use('/public', express.static('files')); // serve the actual files
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
32604 次 |
最近记录: |