问题的标题是不言自明的。我想知道来自 API 请求的 JSON 文档 A 和已经在 Mongo DB 中的 JSON 文档 B 有什么区别。如何获取列名和数据的更改..我正在创建日志..这就是我想要的原因。 .. 下面是我正在尝试的代码:
NodeJS API代码//
function Updatejob(req, res) {
return function (jobSchedule) {
var obj = new Date();
CompareJSON(req, mongodbjson);
return Job.create(req.body).then(.....)
}
更新记录前Mongodb中已有数据
{
"_id" : ObjectId("586d1032aef194155028e9c7"),
"history" : [
{
"_id" : ObjectId("586d1032aef194155028e9c4"),
"updated_by" : "",
"details" : "Job Created",
"changetype" : "Created",
"datetime" : ISODate("2017-01-04T15:09:38.465Z")
}
],
"current_status" : "Pending",
"time" : 0
}
//请求更新数据
{
"_id" : ObjectId("586d1032aef194155028e9c7"),
"history" : [
{
"_id" : ObjectId("586d1032aef194155028e9c4"),
"updated_by" : "",
"details" : "Job Completed",
"changetype" : "Completed",
"datetime" : ISODate("2017-01-04T15:09:38.465Z")
}
],
"current_status" : "Completed",
"time" : 0
}
最佳答案
你可以使用jsondiffpatch
:
var delta = jsondiffpatch.diff(object1, object2);
参见:
关于json - 如何将 API 请求 JSON 与 MongoDb 中现有的 json 文档进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41469256/