如何使用Node通过SSL连接到MongoDB服务器.js?

我已经阅读了一些驱动程序(mongojsmongodb-native)的源代码,我已经在谷歌上搜索了一段时间,但似乎找不到任何合适的教程、指南或文档.

推荐答案

正如 comments 中所暗示的,node-mongodb-native人拥有所需的一切.

我使用以下方法启动并运行它:

var mongo = require('mongodb');

var server = new mongo.Server('HOSTNAME', 27017, { ssl: true });
var db = new mongo.Db('NAME_OF_MY_DB', server, { w: 1 });
var auth = { user: 'USERNAME', pass: 'PASSWORD' };

db.open(function(err, db) {
  if (err) return console.log("error opening", err);

  db.authenticate(auth.user, auth.pass, function(err, result) {
    if (err) return console.log("error authenticating", err);

    console.log("authed?", result);

    db.collection('whatever').count(function(err, count) {
      if (err) return console.log("error counting", err);

      console.log("count", count);
      db.close()
    });
  });
});

Edit

您还可以从mongoose开始执行ssl:

mongoose.createConnection(connString, { server: { ssl: true }})

Mongodb相关问答推荐

MongoDB.ArrayFilters出错:在路径中找不到标识符';elem';的数组筛选器

如何在MongoDB中对两个数组进行分组?

执行聚合以消除重复并获得唯一计数

减法聚合Mongo文档Golang

分组前的 MongoDb 聚合总数

在 MongoDB 中加入多个集合

MongoDB 更新:如果新值不同,则将旧字段值推送到另一个数组字段

Mongoose 返回包含属性内任何位置的值的所有文档

MongoDB中的readPreference和readConcern有什么区别?

django 和 mongodb 是否使迁移成为过go ?

`fields cannot be identical'和''` mongoimport错误

如何在 Mongoose 中更新数组值

使用 MongoDB 进行嵌套分组

Golang + MongoDB 嵌入类型(将一个 struct 嵌入到另一个 struct 中)

如何使用 MongoDB 以编程方式预拆分基于 GUID 的分片键

如何在 Rails 中混合使用 mongodb 和传统数据库?

MongoException: Index with name: code already exists with different options

Flask:设置应用程序和请求特定的属性?

MongoDB MapReduce - 发出一个键/一个值不调用reduce

MongoDB 按数组元素对文档进行排序