【问题标题】:Download CSV file on client side在客户端下载 CSV 文件
【发布时间】:2020-01-31 09:58:39
【问题描述】:

我编写了一个 API 来将 用户集合从 MONGODB 导出到 CSV。 API 在按钮单击时被调用,并将数据导出到 CSV ......现在的问题是,当调用这个 API 时,它会生成 RESULT FILE IN MY PROJECT ,我希望结果文件在客户端获取下载,意味着当用户单击导出按钮时,它会显示 另存为选项,用户选择文件夹、名称等,然后文件将下载到客户端计算机上 ...知道如何实现这一点...我,M 使用 NODE JS , MONGODBJSON2CSV 模块进行数据转换...下面是我的代码

app.get('/USER/exporttocsv', function (req, res, next) {
    USER.find().select('-__v').lean().exec({}, function (err, products) {
        const json2csvParser = new Json2csvParser({ header: true });
        const csvData = json2csvParser.parse(products);
        fs.writeFile("bezkoder_mongodb_fs.csv", csvData, function (error) {
            if (error) throw error;
            console.log("Write to bezkoder_mongodb_fs.csv successfully!");
        });
    });
})

【问题讨论】:

标签: node.js csv export-to-csv


【解决方案1】:

将 response.download() 方法添加到您的代码中。这将使用户能够在客户端下载文件:

res.download('path/to/file-to-download');

【讨论】:

    【解决方案2】:

    您可以将内容类型添加到响应并设置 csv 文件名,如下所示。

    router.get('/csv', (req, res) => {
      res.setHeader('Content-Type', 'text/csv');
      res.setHeader("Content-Disposition", 'attachment; filename=ireshan.csv');
      res.send("Sally Whittaker,2018,McCarren House,312,3.75\r\nSally Whittaker,2018,McCarren House,312,3.75");
    });
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-26
      • 1970-01-01
      • 2013-03-19
      • 2013-11-02
      • 2014-07-05
      • 2018-12-01
      • 1970-01-01
      • 2022-07-21
      相关资源
      最近更新 更多