Node TypeError: требуется корневой путь

Я пытаюсь установить простой узел / экспресс-сервер, и я получаю следующую ошибку

TypeError: требуется корневой путь

Я хотел бы знать, как исправить эту ошибку. благодаря


var nodeModulesDir = process.env.NODE_MODULES_DIR,

app.use(express.static(publicDir));
app.use("/node_modules", express.static(nodeModulesDir)); // ERROR AT THIS LINE
app.post("/uploads", onUpload);
app.delete("/uploads/:uuid", onDeleteFile);

javascript,node.js,express,

0

Ответов: 3


var nodeModulesDir = process.env.NODE_MODULES_DIR,

app.use(express.static(publicDir));
app.use("/node_modules", express.static(nodeModulesDir)); // ERROR AT THIS LINE
app.post("/uploads", onUpload);
app.delete("/uploads/:uuid", onDeleteFile);
30
0 принят

изменить .bash_profile добавить экспорт NODE_MODULES_DIR = GGGGGGGGGGG

введите описание изображения здесь

BTW, Не забудьте перезапустить сервер!


1

Попробуйте этот путь

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

Я имею в виду использование __dirnameдля получения от основного корневого пути.


0

TL; DR: проверьте переменные publicDir или nodeModulesDir, которые вы передаете.

Экспресс использует модуль serve-static .

поэтому ошибка возникает из:

function serveStatic (root, options) {
  if (!root) {
    throw new TypeError('root path required')
  }
   ...
}

serveStatic (root, options)

Создайте новую функцию промежуточного программного обеспечения для обслуживания файлов из заданного корневого каталога. Файл для обслуживания будет определен путем объединения req.url с предоставленным корневым каталогом. Когда файл не найден, вместо отправки ответа 404, этот модуль вместо этого вызовет next (), чтобы перейти к следующему промежуточному программному обеспечению, позволяя выполнять штабелирование и откат.

JavaScript, Node.js, экспресс,
Похожие вопросы
Яндекс.Метрика