我有一个分页请求,它为我提供了一个对象列表,稍后我将其连接起来以获取完整的对象列表。
如果我尝试对其进行 JSON.stringify,则对于具有范围错误的大型对象,它会失败。我正在寻找一种使用 zlib.gzip
处理大型 JSON 对象的方法。
最佳答案
尝试安装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(文件),但您可以使用集合并将其传递到流。
希望有帮助。
关于node.js - GZip 分页 JSON 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43527412/