如何使用ExpressJS/RailwayJS(Node.JS)生成JSON?

15

我正在研究使用Node.JS进行开发,发现了ExpressJS和RailwayJS(基于Express)这两个用于Node的框架。它们所使用的模版引擎Jade/EJS似乎更适合处理HTML。那么当我开发一个API时,如何生成JSON呢?

2个回答

56

Express和Railway都是在Node的HTTP模块上进行扩展,并且两者都会提供一个"response"对象作为路由/中间件处理程序回调的第二个参数。这个参数的名称通常缩短为 res ,以节省一些按键次数。

为了轻松地将对象作为JSON消息发送,Express公开了以下方法:

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

示例:

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

// -- OR -- //

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

请查看expressjs.com上的文档,同时GitHub源代码也有很好的文档记录。


11

您只需创建普通的JavaScript对象,例如:

var x = {
    test: 1,
    embedded: {
        attr1: 'attr',
        attr2: false
    }
};

并且

JSON.stringify(x);

将其转换为JSON字符串。请注意,x可能包含将被省略的函数。另外,如果.toJSON()可用,则JSON.stringify将返回x.toJSON()


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接