gpt4 book ai didi

node.js - 如何使用node.js和react.js下载大型CSV文件

转载 作者:太空宇宙 更新时间:2023-11-03 22:05:01 25 4
gpt4 key购买 nike

我想通过node.js从react下载一个Mongo集合(包含大量记录)作为CSV。

目前我所做的是,我首先将数据加载到 Node 中,然后处理它们后我解决 promise 。对于小型集合,这效果很好。但是当记录数越来越多时,很长一段时间后就会返回 502 错误。最好的方法是什么?

最佳答案

这是一个基本的代码 spinet,帮助我解决了上述问题。

    const collection = ... ;
const query = ... ;
const select = ... ;

const cursor = mongodb.collection(collection).find(query, select)

var csv = require('csv');

transfer(doc) {
return {
Address: doc.address,
State: doc.state.abbreviation
};
}

function(req, resp) {
const cursor = ...
// The transfer function (above)
const transfer = ...;

const fileName = "Download.csv";

resp.setHeader('Content-disposition', `attachment; fileame=${fileName}`);
resp.writeHead(200, { 'Content-Type': 'text/csv' });

resp.flushHeaders();

// Stream the query result
cursor.stream()
.pipe(csv.transfer(transformer))
.pipe(csv.stringify({header: true}))
.pipe(resp)
}

关于node.js - 如何使用node.js和react.js下载大型CSV文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56488433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com