Javascript 从本地撇号cms代码连接到Mongo Atlas

Javascript 从本地撇号cms代码连接到Mongo Atlas,javascript,mongodb,apostrophe-cms,Javascript,Mongodb,Apostrophe Cms,我在Mongo Atlas上启用了从任意位置0.0.0.0/0的连接。 在撇号代码中,在文件data/local.js 我添加了以下代码: module.exports={ 模块:{ “撇号db”:{ uri:'mongodb+srv://clustername.mongodb.net/dbname?retryWrites=true' } } };我能够用Atlas重现这一点。您正在尝试使用mongodb+srv URL,这是Atlas在使用mongodb驱动程序3.6或更高版本时推荐的。撇号

我在Mongo Atlas上启用了从任意位置0.0.0.0/0的连接。 在撇号代码中,在文件data/local.js 我添加了以下代码:

module.exports={
模块:{
“撇号db”:{
uri:'mongodb+srv://clustername.mongodb.net/dbname?retryWrites=true'
}
}

};我能够用Atlas重现这一点。您正在尝试使用mongodb+srv URL,这是Atlas在使用mongodb驱动程序3.6或更高版本时推荐的。撇号2.x当前在MongoDB 2.x驱动程序中,因此这不起作用

如果单击“我正在使用驱动程序3.4或更早版本”选项卡,则需要使用Atlas上显示的旧样式的URL:

mongodb://user:password@test-shard-00-00-some-address.mongodb.net:27017,test-shard-00-01-some-address.mongodb.net:27017/test?ssl=true&replicaSet=your-replica-set-name&authSource=admin&retryWrites=true
当我这样做的时候,我连接起来没有问题

如果您希望使用更新版本的MongoDB驱动程序和新样式的URI,可以使用该模块。但是,这并不是Atlas成功的必要条件

在撇号3.x中,我们当然将使用新一代的现成驱动程序


(最后一点供参考-MongoDB驱动程序版本和MongoDB服务器版本不是一回事。例如,您不需要3.6驱动程序来连接到3.6。)

我将其与具有管理员访问权限的实际凭据一起使用,并得到了相同的错误。我想在连接正常后删除无限访问权限。data/local.js是唯一需要编辑的文件吗?啊哈,这与使用他们推荐的新版本mongodb驱动程序的连接URI有关。撇号目前不提供。看看我的最新答案。你也能帮我吗?