How do I generate JSON with ExpressJS/RailwayJS (Node.JS)

Jiew Meng picture Jiew Meng · May 19, 2012 · Viewed 17.3k times · Source

I was exploring developing in Node.JS and found ExpressJS and RailwayJS (based on Express) which are frameworks for Node. The templating engine used Jade/EJS appears to be more for HTML. How might I generate JSON, eg. when I develop an API

Answer

srquinn picture srquinn · May 19, 2012

Express and Railway both extend off the HTTP module in node and both provide a "response" object as the second argument of the route/middleware handler's callback. This argument's name is usually shortened to res to save a few keystrokes.

To easily send an object as a JSON message, Express exposes the following method:

res.json({ some: "object literal" });

Examples:

app.use(function (req, res, next) {
  res.json({ some: "object literal" });
});

// -- OR -- //

app.get('/', function (req, res, next) {
  res.json({ some: "object literal" });
});

Check out the docs at expressjs.com and the github source is well documented as well