Mongojs:忽略重复的对象插入

我有这个Node.js应用程序,它获得了一个具有唯一ID的JSON数据的大量数据,然后使用Mongojs将它们插入到MongoDB中。

问题是,在这大量的数据中,可能会有一些重复的文件! 所以当使用Mongojs插入这些数据时,它会返回错误E11000 duplicate key error ,并且不会继续插入。

所以我在寻找的东西就像本地Mongo的continueOnError/keepGoing选项。 它会忽略重复并继续insert
http://mongodb.github.io/node-mongodb-native/api-generated/collection.html#insert

这是我的代码,如果有帮助:

 var mongojs = require('mongojs'), dburl = process.env.MONGOHQ_URL || 'mongodb://localhost/test', db = mongojs(dburl, ['concerts']); function insertData(data) { db.concerts.insert(data, {keepGoing: true, safe: true}, function(err, docs){ console.log('err: ' + err + ' docs:' + docs); if(!err) console.log('data inserted successfully!\n'); }); } exports.insertData = insertData; 

在这里代码中我已经设置了选项为true,但它仍然不起作用(相同的错误)。
无论如何,我可以用Mongojs做这个,或者我必须使用native-mongo吗?

提前致谢。

这解决了我的问题,以防万一。

 db.concerts.insert(data, {continueOnError: true, safe: true}, function(err, docs){ console.log('err: ' + err); if(!err) console.log('data inserted successfully!\n'); }); 

来源 : https : //github.com/gett/mongojs/issues/58