Package Exports
- streaming-json-stringify
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (streaming-json-stringify) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Streaming JSON.stringify()
Similar to JSONStream.stringify() except it is, by default, a binary stream, and it is a streams2 implementation.
Example
The main use case for this is to stream a database query to a web client. This is meant to be used only with arrays, not objects.
var Stringify = require('streaming-json-stringify')
app.get('/things', function (req, res, next) {
res.setHeader('Content-Type', 'application/json; charset=utf-8')
db.things.find()
.stream()
.pipe(Stringify())
.pipe(res)
})will yield something like
[
{"_id":"123412341234123412341234"}
,
{"_id":"123412341234123412341234"}
]
Separators
- The stream always starts with
'[\n'. - Documents are separated by
'\n,\n'. - The stream is terminated with
'\n]\n'.
Stringifier
By default, json-stringify-safe is used to convert objects into strings. This can be configured with options.stringifier.
API
Stringify([options])
Returns a Transform stream.
The options are passed to the Transform constructor.
JSON.stringify options
You can override these:
var stringify = Stringify()
stringify.replacer = function () {}
stringify.space = 2
stringify.opener = '['
stringify.seperator = ','
stringify.closer = ']'
stringify.stringifier = JSON.stringify