我应该如何使用Node.js解析JSON ?是否有一些模块可以安全地验证和解析JSON ?


当前回答

这里的每个人都讲过JSON。所以我想说点别的。有一个伟大的模块连接许多中间件,使应用程序的开发更容易和更好。中间件之一是bodyParser。它可以解析JSON, html表单等。还有一个仅用于JSON解析的特定中间件noop。

看看上面的链接,它可能对你很有帮助。

其他回答

包括node-fs库。

var fs = require("fs");
var file = JSON.parse(fs.readFileSync("./PATH/data.json", "utf8"));

有关'fs'库的更多信息,请参阅http://nodejs.org/api/fs.html的文档

我想提一下全局JSON对象的替代方案。 JSON。解析和JSON。stringify都是同步的,所以如果你想处理大对象,你可能想查看一些异步JSON模块。

看看:https://github.com/joyent/node/wiki/Modules#wiki-parsers-json

您可以要求.json文件。

var parsedJSON = require('./file-name');

例如,如果你有一个配置。Json文件在相同的目录作为你的源代码文件,你会使用:

var config = require('./config.json');

或(文件扩展名可以省略):

var config = require('./config');

注意require是同步的,只读取文件一次,后续调用从缓存返回结果

还要注意,您应该只对完全控制下的本地文件使用此选项,因为它可能会执行文件中的任何代码。

您可以使用JSON.parse()(这是一个内置函数,可能会强制您使用try-catch语句包装它)。

或者使用一些JSON解析npm库,比如JSON -parse- Or

只是想完成答案(因为我挣扎了一段时间),想展示如何访问json信息,这个例子显示了访问json数组:

Var request = require('request'); 请求(“https://server/run?oper_get_groups_joined_by_user_id &user_id=5111298845048832',函数(错误,响应,body) { 如果(!错误&&响应。statusCode == 200) { var jsonArr = JSON.parse(body); console.log (jsonArr); console.log("group id:" + jsonArr[0].id); } })