我正在研究使用Node.JS进行开发,发现了ExpressJS和RailwayJS(基于Express)这两个用于Node的框架。它们所使用的模版引擎Jade/EJS似乎更适合处理HTML。那么当我开发一个API时,如何生成JSON呢?
我正在研究使用Node.JS进行开发,发现了ExpressJS和RailwayJS(基于Express)这两个用于Node的框架。它们所使用的模版引擎Jade/EJS似乎更适合处理HTML。那么当我开发一个API时,如何生成JSON呢?
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源代码也有很好的文档记录。
您只需创建普通的JavaScript对象,例如:
var x = {
test: 1,
embedded: {
attr1: 'attr',
attr2: false
}
};
并且
JSON.stringify(x);
将其转换为JSON字符串。请注意,x
可能包含将被省略的函数。另外,如果.toJSON()
可用,则JSON.stringify
将返回x.toJSON()
。