Node.js, невозможно открыть файлы. Ошибка: ENOENT, stat ‘./path/to/file’

Я разработал программу node.js, используя express-инфраструктуру на моем компьютере, где она работает нормально, без каких-либо жалоб.

Однако, когда я запускаю программу на своем устройстве SUSE Studio, где он предназначен для жизни, я получаю сообщение об ошибке при любом взаимодействии файлов.

Error: ENOENT, stat './path/to/file' 

Я проверил, что права на файл правильные, какие они есть. Мой компьютер и мое устройство работают с разными версиями узлов, если это имеет значение.

Есть предположения?

Пути, указанные с помощью . относятся к текущему рабочему каталогу, а не к файлу сценария. Таким образом, файл можно найти, если вы запустите node app.js но не если вы запустите node folder/app.js Единственное исключение из этого – это require('./file') и это возможно только потому, что require наличие require каждого модуля и, следовательно, знает, из какого модуля он вызывается.

Чтобы сделать путь относительно сценария, вы должны использовать переменную __dirname .

 var path = require('path'); path.join(__dirname, 'path/to/file') 

или потенциально

 path.join(__dirname, 'path', 'to', 'file') 

Здесь код для использования вашего app.js

input указывает имя файла

 res.download(__dirname+'/'+input); 
  • Что конкретно представляет собой цикл событий Node.js?
  • Как я могу запросить различные значения в Mongoose?
  • Ошибка node.js mysql: ECONNREFUSED
  • Как разместить несколько узлов Node.js на одном и том же IP-сервере с разными доменами?
  • Что делает тело-парсер с выражением?
  • Как установить модуль node.js без использования npm?
  • Обработать перезагрузку браузера socket.io
  • Как установить предыдущую версию пакета npm?
  • Как сделать сервер webpack dev запущенным на порту 80 и 0.0.0.0, чтобы сделать его общедоступным?
  • Виртуальный хостинг с автономным сервером node.js
  • NodeJS - Ошибка при установке с помощью NPM
  • Давайте будем гением компьютера.