简单的方法来存储Node.js下的JSON
我正在寻找一个超级简单的方式来存储一个JSON数组在Node.js下的一个持久的方式。 它不需要有任何特殊的function。 我只想放置一个JSON对象,并能够在下一次服务器重新启动时读取它。 Mongo.db或Couch.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')
然后照常工作。
尽pipeLokiJS和NeDB都有更多的用户,但我刚刚遇到了TaffyDB 。 虽然我自己没有尝试过,但我想我应该在这里添加它来完整。