简单的方法来存储Node.js下的JSON

我正在寻找一个超级简单的方式来存储一个JSON数组在Node.js下的一个持久的方式。 它不需要有任何特殊的function。 我只想放置一个JSON对象,并能够在下一次服务器重新启动时读取它。 Mongo.dbCouch.db似乎是一个矫枉过正的目的。

为什么不写入文件?

// Writing... var fs = require("fs"); var myJson = { key: "myvalue" }; fs.writeFile( "filename.json", JSON.stringify( myJson ), "utf8", yourCallback ); // And then, to read it... myJson = require("./filename.json"); 

试试NeDB: https : //github.com/louischatriot/nedb

“embedded的Node.js持久化数据库,用Javascript编写,没有依赖关系(当然npm模块除外),你可以把它看作Node.js项目的一个SQLite,可以使用一个简单的require语句。是MongoDB的一个子集,您可以将其用作持久存储或仅存储在内存中的数据存储。“

我find一个名为json-fs-store的库 ,将JavaScript对象序列化为JSON文件并稍后检索。

当通过store.load方法检索文件(目前在文档中没有描述)时,它使用JSON.parse进行分析,这比在另一个回答中做一个require更好:

  • 当内容格式错误时,您会得到正确的error handling
  • 如果有人设法将JavaScript代码隐藏到文件中,则会导致parsing错误,而不是执行JS。

您可以将JSON数据保存在一个简单的文本文件中,并在服务器重启时读取它。

 require('yourarrayfile.json') 

然后照常工作。

如果你正在寻找性能考虑:LokiJS

https://www.npmjs.com/package/lokijs

http://lokijs.org/#/

尽pipeLokiJS和NeDB都有更多的用户,但我刚刚遇到了TaffyDB 。 虽然我自己没有尝试过,但我想我应该在这里添加它来完整。