Я запускаю сервер узлов js на ПК с Windows, и у меня возникают проблемы с использованием строк запросов для загрузки файлов на сервер.На ПК у меня есть файл, который я хочу скачать, расположенный в C: / Users / User / Desktop.Это тот же каталог, где хранится файл JS-сервера.
Я пытаюсь загрузить этот файл на мобильный телефон, используя "http://10.0.0.171:3000/?action=download&filepath=C:\Users\User\Desktop\File.txt"
10.0.0.171 как локальный компьютер, на котором работает сервер в сети.
Что мне делатьнужно изменить, чтобы можно было передать значение filepath методу загрузки в коде и загрузить указанный файл?
http.createServer(function (req, res) {
var q = url.parse(req.url, true);
var filename = "." + q.pathname;
fs.readFile(filename, function(err, data) {
if (err) {
res.writeHead(404, {'Content-Type': 'text/html'});
return res.end("404 Not Found");
}
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(data);
return res.end();
});
if(q.action == "download"){
app.get('/download', function(req, res){
var file = q.filepath;
res.download(file); // Set disposition and send it.
});
}
if(q.action == "rename"){
fs.rename('mynewfile1.txt', 'myrenamedfile.txt', function (err) {
if (err) throw err;
console.log('File Renamed!');
});
}
if(q.action == "delete"){
fs.unlink('mynewfile2.txt', function (err) {
if (err) throw err;
console.log('File deleted!');
});
}
if(q.action == "copy"){
fs.copyFile('source.txt', 'destination.txt', (err) => {
if (err) throw err;
console.log('source.txt was copied to destination.txt');
});
}
}).listen(3000, "10.0.0.171");