提问者:小点点

Express JS通过endpoint下载zip


我试图允许用户通过express JS api调用从服务器下载zip文件夹。 我用zip-r download.zip folder-to-zip创建了我的文件夹,并且正在努力下载它。

似乎如果我向某个endpoint发出GET请求,它只下载到服务器而不是浏览器,我的endpoint是:

router.get('/download', (req, res) => {
  res.download('download.zip')
})

我需要附加一些东西到一个按钮,将下载这个压缩文件夹。


共1个答案

匿名用户

我还没有测试过这个,我会更新我的答案当我测试过。

但我认为做一些像:

router.get('/download', (req, res) => {
  res.setHeader('Content-type','application/zip');
  res.sendFile(__dirname + '/download.zip');
})

这通常是我通过Express下载文件的方式。