2

我有一个文件夹,其中包含使用 npm 包excel4node构建的所有 Excel 表格。

现在我想根据文件名将这些文件导出给用户。

我怎么做?

尽管我不明白如何将这些文件导出给用户,但我尝试过参考这篇文章。

4

1 回答 1

3

如果我的问题正确,您想在客户端使用可能的用户名进行 API 调用时发送一个 excel 文件。为此,这里有一些伪代码:

app.get('/user/:username', function(req, res) {
  const username = req.params['username'];
  const filePath =  "/path/to/"+username+".excel" 

  // Check if file specified by the filePath exists 
  fs.exists(filePath, function(exists){
       if (exists) {     
         //send the file to client
         res.sendFile(filePath);
       }
    });
})

注意* res.sendFile()从 Express v4.8.0 开始支持。


现在根据您的评论,如果您想向客户端发送所有文件的列表,您将必须返回一个字符串数组并将其呈现在 UI 上。

app.get('/user/all', function(req, res) {

  const testFolder =  "/path/to/folder";

  // read the folder and set the result in a variable    
  var listOfFiles = fs.readdirSync(testFolder);
  // send a JSON or any other response with these strings
  res.json({"allFiles" : listOfFiles});
})
于 2018-04-03T05:56:45.400 回答