来自OSX和Windows上的mongodb nodejs本机驱动程序的不同插入响应

时间:2016-03-26 12:35:16

标签: node.js mongodb

将文档从Windows和OSX插入外部MongoDB数据库时,我得到了不同的响应。

两个系统都使用https://www.npmjs.com/package/mongodb

中的mongodb驱动程序v2.1.11

插件在两者上都运行良好,但我得到的结果却完全不同。

OSX:{ result: { ok: 1, n: 1, ...other data}, ops: [the inserted records] }

赢:[the inserted records]

知道为什么会这样吗?

重现的步骤:

  • nodejs:5.7.0
  • npm:3.6.0
  • mongodb(来自npm):2.1.11

给定nodejs应用程序,为nodejs安装官方MongoDB驱动程序的v2.1.11: npm install --save mongodb@2.1.11

从您的nodejs应用程序中,导入mongo,创建一个mongo客户端并连接到MongoDB实例并将文档插入到集合中:

import mongo from 'mongodb';
const MongoClient = mongo.MongoClient;

MongoClient.connect(mongoUrl, (err, db) => { 
    db.collection('someCollection').insert({ foo: 'foo'}, (insErr, result) => {
        console.log(result); // Observe the result shape is different on Win/OSX
   });
});

1 个答案:

答案 0 :(得分:0)

事实证明,我的应用程序中有一个深深嵌入的package.json,其中包含较低版本的MongoDB驱动程序。

删除这个pacakge.json并确保所有内容都保存在顶级package.json中解决了我的问题。