Подтвердить что ты не робот

Express.js - любой способ отобразить список файлов/директорий?

С Express.js существует способ отображения списка файлов/директорий, таких как apache, когда вы обращаетесь к URL-адресу каталога, который не работает У меня есть индексный файл, поэтому он отображает список всех содержимого этих каталогов?

Есть ли расширение или пакет, который делает это, о котором я не знаю? Или я должен сам это сделать?

Приветствую, ребята, вы рок!:)

4b9b3361

Ответ 1

Существует совершенно новое связующее ПО 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);

Ответ 2

Начиная с Express 4.x, промежуточное ПО каталога больше не связывается с выражением. Вы захотите загрузить модуль npm serve-index.

Затем, например, для отображения списков файлов /dir в каталоге в корневом приложении под названием videos будет выглядеть:

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

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

Ответ 3

Следующий код будет обслуживать как каталог, так и файлы

var serveIndex = require('serve-index');
app.use('/p', serveIndex(path.join(__dirname, 'public')));
app.use('/p', express.static(path.join(__dirname, 'public')));

Ответ 4

Это сделает для вас работу: (новая версия express требует отдельного промежуточного программного обеспечения). Например. вы помещаете файлы в папку "файлы", и вы хотите, чтобы 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