【发布时间】:2017-10-01 15:58:47
【问题描述】:
我在 Application A 中安装了一个 MongoDB 查询。例如:
const query = { country: new ObjectId(""), age: { $gte: 25 } }
// save contents of 'query'
...我想将它保存在 de DB 中并让 Application B 运行它:
// const query = read object from the database
db.collection('foo').find(query).toArray()...
我想现在将它保存在 mongo 中,并在以后检索它以运行。但是 MongoDB 不允许我保存具有 $gte 值的文档。我已经尝试JSON.stringify(query),将结果字符串保存在数据库中(好的!),然后在另一边解析它。
然后,遇到ObjectId 像这样被字符串化的问题:
{
"class" : "org.bson.types.ObjectId",
"counter" : 9053980.0,
"date" : "2015-04-01T19:24:39Z",
"machineIdentifier" : 14987412.0,
"processIdentifier" : 29601.0,
"time" : 1427916279000.0,
"timeSecond" : 1427916279.0,
"timestamp" : 1427916279.0
}
解析的 JSON 不是有效的 ObjectId。它只是一个 JS 对象。
如何保存 MongoDB 查询并将其解析为 mongo 将再次接受的对象?
【问题讨论】: