ldjson

0.0.6 • Public • Published

ldjson -- Line Delimited JSON

see http://en.wikipedia.org/wiki/Line_Delimited_JSON

Status

Under development, see TODOs.

Install

npm install ldjson

API

Use it on any readable stream:

var ldjson = require('ldjson');

var stream = ldjson.createDeserialisingStream(your_stream);

ldjson streams fire data events with two arguments. The first is the original JSON string, while the second is the Javascript object.

Convenience API

ldjson can present an API similar to net for TCP client and server functions.

Client

var ldjson = require('ldjson');

var ldjson_socket = ldjson.connect(1337, '127.0.0.1', function() {
  console.log('connected');
});

ldjson_socket.on('data', function(json, ob) {
  console.log('received json:', json);
  console.log('received ob:', ob);
});

Server

var ldjson = require('ldjson');

var server = ldjson.createServer(function (ldjson_socket) {
  console.log('accepted connection');

  var count = 0;
  var interval = setInterval(function() {
    ldjson_socket.write({"count":count++});
  }, 3000);

  ldjson_socket.on('data', function(json, ob) {
    console.log('received json:', json);
    console.log('received ob:', ob);
  });
});

server.listen(1337, '127.0.0.1');

TODOs

  • Check handling of invalid JSON.
  • Fix pause and resume functionality for wrapped streams.
  • Increase test coverage.

Readme

Keywords

none

Package Sidebar

Install

npm i ldjson

Weekly Downloads

0

Version

0.0.6

License

none

Last publish

Collaborators

  • chrisdew