Parsing a JSON string in Ruby

This looks like JavaScript Object Notation (JSON). You can parse JSON that resides in some variable, e.g. json_string, like so: If you’re using an older Ruby, you may need to install the json gem. There are also other implementations of JSON for Ruby that may fit some use-cases better: YAJL C Bindings for Ruby JSON::Stream

data.map is not a function

Objects, {} in JavaScript do not have the method .map(). It’s only for Arrays, []. So in order for your code to work change data.map() to data.products.map() since products is an array which you can iterate upon.

is not JSON serializable

It’s worth noting that the QuerySet.values_list() method doesn’t actually return a list, but an object of type django.db.models.query.ValuesListQuerySet, in order to maintain Django’s goal of lazy evaluation, i.e. the DB query required to generate the ‘list’ isn’t actually performed until the object is evaluated. Somewhat irritatingly, though, this object has a custom __repr__ method which makes it look like a … Read more

Are multi-line strings allowed in JSON?

Is it possible to have multi-line strings in JSON? It’s mostly for visual comfort so I suppose I can just turn word wrap on in my editor, but I’m just kinda curious. I’m writing some data files in JSON format and would like to have some really long string values split over multiple lines. Using … Read more

What is the correct JSON content type?

For JSON text: The MIME media type for JSON text is application/json. The default encoding is UTF-8. (Source: RFC 4627) For JSONP (runnable JavaScript) with callback: Here are some blog posts that were mentioned in the relevant comments: Why you shouldn’t use text/html for JSON Internet Explorer sometimes has issues with application/json A rather complete list of Mimetypes and what to use them for … Read more

What is the correct JSON content type?

For JSON text: The MIME media type for JSON text is application/json. The default encoding is UTF-8. (Source: RFC 4627) For JSONP (runnable JavaScript) with callback: Here are some blog posts that were mentioned in the relevant comments: Why you shouldn’t use text/html for JSON Internet Explorer sometimes has issues with application/json A rather complete list of Mimetypes and what to use them for … Read more

YAML equivalent of array of objects in JSON

TL;DR You want this: Mappings The YAML equivalent of a JSON object is a mapping, which looks like these: Note that the first characters of the keys in a block mapping must be in the same column. To demonstrate: Sequences The equivalent of a JSON array in YAML is a sequence, which looks like either … Read more

What is the convention in JSON for empty vs. null?

It is good programming practice to return an empty array [] if the expected return type is an array. This makes sure that the receiver of the json can treat the value as an array immediately without having to first check for null. It’s the same way with empty objects using open-closed braces {}. Strings, Booleans and integers … Read more

Representing null in JSON

Let’s evaluate the parsing of each: http://jsfiddle.net/brandonscript/Y2dGv/ The tl;dr here: The fragment in the json2 variable is the way the JSON spec indicates null should be represented. But as always, it depends on what you’re doing — sometimes the “right” way to do it doesn’t always work for your situation. Use your judgement and make an informed decision. JSON1 {} This returns an empty … Read more

Fastest JSON reader/writer for C++

http://lloyd.github.com/yajl/ http://www.digip.org/jansson/ Don’t really know how they compare for speed, but the first one looks like the right idea for scaling to really big JSON data, since it parses only a small chunk at a time so they don’t need to hold all the data in memory at once (This can be faster or slower … Read more