如何在 NodeJS 中将传入的 json 流拆分为单独的 json 消息
How to split incoming json stream into individual json messages in NodeJS
我正在寻找可以通过管道传输到我现有流的解决方案,以便此输入:
{ "foo":"bar" }{ "foo": { "foo": "bar" }}
会显示这个:
{ "foo":"bar" }
{ "foo": { "foo": "bar" }}
使用此代码:
incomingStream.pipe(jsonSplitter()).on('data', (singleJson) => {
console.log(singleJson)
});
有包裹吗?
好的,您可以使用 stream-json
npm 包。为了实现我在问题中提出的问题,您需要以下代码:
import { parser } from 'stream-json';
import { streamObject } from 'stream-json/streamers/StreamObject';
...
stream
.pipe(parser({ jsonStreaming: true }))
.pipe(streamObject())
.on('data', (data: any) => {
console.log(data);
});
我正在寻找可以通过管道传输到我现有流的解决方案,以便此输入:
{ "foo":"bar" }{ "foo": { "foo": "bar" }}
会显示这个:
{ "foo":"bar" }
{ "foo": { "foo": "bar" }}
使用此代码:
incomingStream.pipe(jsonSplitter()).on('data', (singleJson) => {
console.log(singleJson)
});
有包裹吗?
好的,您可以使用 stream-json
npm 包。为了实现我在问题中提出的问题,您需要以下代码:
import { parser } from 'stream-json';
import { streamObject } from 'stream-json/streamers/StreamObject';
...
stream
.pipe(parser({ jsonStreaming: true }))
.pipe(streamObject())
.on('data', (data: any) => {
console.log(data);
});