我有一个分页请求,它为我提供了一个对象列表,我稍后将其连接以获取完整的对象列表。
如果我尝试JSON.stringify这个,它对于范围错误的大对象会失败。我正在寻找一种方法zlib.gzip
来处理大型JSON对象。
答案 0 :(得分:1)
尝试安装stream-json
它将解决您的问题,它是一个很好的包装流和解析JSON。
//require the modules stream-json
const StreamArray = require('stream-json/utils/StreamArray');
// require fs if your using a file
const fs = require('fs');
const zlib = require('zlib');
// Create an instance of StreamArray
const streamArray = StreamArray.make();
fs.createReadStream('./YOUR_FILE.json.gz')
.pipe(zlib.createUnzip()) // Unzip
.pipe(streamArray.input); //Read the stream
//here you can do whatever you want with the stream,
//you can stream it to response.
streamArray.output.pipe(process.stdout);
在示例中,我使用的是JSON(文件),但您可以使用集合并将其传递给流。
希望有帮助。