Я хочу использовать res.download () для загрузки определенных файлов с сервера, однако, когда я запускаю res.download, клиент не получает правильный URL-адрес. Загружаемые файлы находятся в каталоге, который был установлен статически.
Вот мой соответствующий код бэкэнда:
app.get("/downloadfile", function(req,res){
var file = req.query.file;
var currentpath = req.query.currentpath;
console.log("SENDING FILE: " + file + " at: " + currentpath);
//file = file.substring(20, file.length)
console.log(file);
console.log(currentpath + "/" + file);
res.download(currentpath + "/" + file, file);
})
Вот вывод терминала, когда я запускаю этот раздел кода:
SENDING FILE: Matthew Haywood CV.pdf at: /media/pi/ELEMENTS B//Matt Haywood/Uni Work
Matthew Haywood CV.pdf
/media/pi/ELEMENTS B//Matt Haywood/Uni Work/Matthew Haywood CV.pdf
Это показывает, что путь, указанный для функции res.download, является правильным, и нет ничего плохого в коде переднего конца, в противном случае здесь была бы обнаружена ошибка.
Это что Safari возвращает при запуске этого маршрута:
Почему res.download напрямую указывает на /path_to_file/your_file.pdf/ вместо server / path_to_file / your_file.pdf?
Когда я go на URL-адрес вручную, файл загружается без проблем, но при использовании res.download () он переходит на неправильный URL-адрес.