2016-03-18 1 views
2

Я пытаюсь сделать ссылку для загрузки на моем сервере для zip-файла, и в настоящее время я получаю эту ошибку: (обратите внимание, все еще просто проверяя ее на локальном компьютере)Ошибка при загрузке файла с моего сервера Node.js

{ [Error: ENOENT: no such file or directory, stat 'C:\Users\Jordan\Desktop\Websites\HappyCamel\Users\Jordan\Desktop\Websites\HappyCamel'] 
errno: -4058, 
code: 'ENOENT', 
syscall: 'stat', 
path: 'C:\\Users\\Jordan\\Desktop\\Websites\\HappyCamel\\Users\\Jordan\\Desktop\\Websites\\HappyCamel', 
expose: false, 
statusCode: 404, 
status: 404 } 

Соответствующий код заключается в следующем:

router.get('/file/:name', function(req, res, next) { 
    console.log('test123'); //successfully prints to console 
    res.download('Users/Jordan/Desktop/Websites/HappyCamel/', 'test123.zip', function(err) { 
     console.log('test456'); //successfully prints to console 
     if(err) { 
      console.log(err) //I'm assuming this is source of logged error 
     } else { 
      console.log("no error"); //doesn't print 
     } 
    }); 
}) 

редактировать:

Fixed его, изменяя эту строку:

res.download('Users/Jordan/Desktop/Websites/HappyCamel/', 'test123.zip', function(err) { 

в

res.download('./test123.zip', 'test123.zip', function(err) { 

, но теперь я получаю

angular.min.js:114 ReferenceError: success is not defined 

ошибку в моем браузере, но никаких ошибок в моей консоли узла (моя линия "нет ошибки" не печатает)

+0

Этот путь существует? структура выглядит странно, потому что у вас есть пользователи \ Jordan .... \ Users \ Jordan повторяются дважды. ваш путь загрузки, скорее всего, захочет иметь что-то вроде __dirname + 'path' – ckross01

ответ

2

вам используют относительный путь. когда вы делаете это:

res.download('Users/Jordan/Desktop/Websites/HappyCamel/', 'test123.zip', function(err) { 

он будет искать Users/Jordan/Desktop/Websites/HappyCamel/ внутри директории вашего текущего файла. похоже, что вам нужен полный путь или лучше правильный относительный путь - из-за ошибки он выглядит так, как файл находится с вашим кодом, поэтому это должно делать:

res.download('./', 'test123.zip', function(err) { 
+0

Спасибо, я исправил его, изменив его на 'res.download ('./ test123.zip', 'test123.zip', функция (ERR) { ' , но теперь я получаю ' angular.min.js: 114 ReferenceError: успех не defined' на моем браузере, никакой ошибки от узла Любой идеи, что это должно быть.? –

Смежные вопросы