如何从服务器下载文件并在Node.js中同步重命名?

时间:2019-05-31 20:14:30

标签: node.js file server download synchronous

我希望每个客户端都可以从服务器的文件夹下载文件,并且我不希望所有这些文件都保存在/ download文件夹中。

我想先下载文件然后重命名,但是我需要同步运行此代码。

router.get('/', function(req, res){

        const file = `${__dirname}/upload-folder/apple.jpg`;
        const destination = `C:/Users/steve/Downloads/apple.jpg`;

        res.download(file);

         fs.renameSync(destination,"C:/Users/steve/Desktop/downloadedimg.jpg");     
    }
);

1 个答案:

答案 0 :(得分:0)

似乎您正在将客户端与服务器端进行混合。您提供的代码用于服务器端的node.js。您无法指定文件在客户端计算机上的下载位置。您可以为要下载的文件提供其他名称:

res.download(`${__dirname}/upload-folder/apple.jpg`, 'orange.jpg');

参考:https://expressjs.com/en/api.html#res.download