Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Parse shitty JSON!

branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README.md

knife

Parse JSON that's smushed together

knife

why?

Imagine you have a TCP server that clients are sending JSON to. At fast paces, you can't know if the end of the message is actually the end of the JSON object.

Instead of searching for a delimiter or control character, why not continually parse it?

install

npm install knife

example

var knife = require('knife');

var testObj = {
  lol: 'wut'
}

var goodJSON = JSON.stringify(testObj),
    badJSON = goodJSON + goodJSON;

console.log([
  knife.parse(goodJSON),
  knife.parse(badJSON)
]);

knife.parse(uglyStuff, debug = false)

will always return

{
  results: [ {}, {}, ... ],
  remainder: ''
}
Something went wrong with that request. Please try again.