我有一个在服务器上工作了6个月的NodeJS脚本,本周我设置了一个新的服务器并安装了所有更新版本的软件,包括mongojs,nodejs和mongodb,不知何故我的代码不再工作。Node.js&MongoDB无法规范查询
代码的一部分:
collect.findOne({$or: [{from_id: enviou, to_id: viu}, {from_id: viu, to_id: enviou}]}, {sort: {$natural: -1}}, function (err, echoData) {
if (err || !echoData) {
console.log("No messages found -rv",err);
} else {
console.log(echoData);
}
});
给我的错误:
{ [MongoError: Can't canonicalize query: BadValue Projection cannot have a mix of inclusion and exclusion.]
name: 'MongoError',
message: 'Can\'t canonicalize query: BadValue Projection cannot have a mix of inclusion and exclusion.',
'$err': 'Can\'t canonicalize query: BadValue Projection cannot have a mix of inclusion and exclusion.',
code: 17287 }
这部分:
collect.find({$or: [{from_id: de, to_id: para}, {from_id: para, to_id: de}]}, {skip: skipCount, limit: useDbLimit, sort: {time: 1}}, function (err, echoData) {
if (err || !echoData) {
console.log("No messages found -sm",err);
} else {
echoData.forEach(function (returnData) {
console.log(returnData);
});
}
});
给我的错误:
{ [MongoError: Can't canonicalize query: BadValue Unsupported projection option: sort: { $natural: -1 }]
name: 'MongoError',
message: 'Can\'t canonicalize query: BadValue Unsupported projection option: sort: { $natural: -1 }',
'$err': 'Can\'t canonicalize query: BadValue Unsupported projection option: sort: { $natural: -1 }',
code: 17287 }
我对如何解决这个问题没有任何意见。它适用于我的旧服务器,但不适用于最新的mongodb和mongojs。任何人都可以帮助我?
只是一个观察:我认为你与代码块的错误不匹配 – fixmycode