javascript - Sails.js 连接到 Cloud mongoDb Atlas
问题描述
我创建了一个 Sails.js 应用程序,它正确连接到本地 MongoDB,但如果我想将它连接到云 mongodb,Sails 会引发错误。我应该怎么做才能解决它?
default: {
adapter: 'sails-mongo',
// url: 'mongodb://localhost:27017/referral' // this work fine
url: 'mongodb+srv://MYUSERNAME:MYPASS@cluster0.ikncs.mongodb.net/referral?retryWrites=true&w=majority'
},
错误:错误:钩子(orm
)未能加载!错误:无法拆除 ORM 挂钩。错误详细信息:错误:违反一致性:尝试拆除default
当前未向此适配器注册的数据存储 ( )。这通常是由于用户空间代码中的竞争条件(例如,尝试多次拆除同一个 ORM 实例),或者可能是由于此适配器中的错误。
错误:错误:数据存储的配置无效default
:提供的 URL ('mongodb+srv://MYUSERNAME:MYPASS@cluster0.ikncs.mongodb.net/referral?retryWrites=true&w=majority') 的协议无效。如果包含,协议必须是“mongodb://”。
如果有人能迅速提供帮助,我将不胜感激
解决方案
我有一个类似的问题。
我从 Atlas 获得的连接字符串适用于 Node 3.0 或更高版本,不适用于sails 适配器。
但是来自 Atlas for Node 版本 2.2.12 的连接字符串有效。
在 Atlas 中,单击连接 -> 连接到您的应用程序(使用 MongoDB 的本机驱动程序)-> 选择 Node.js 版本 2.2.12 或更高版本。使用它提供的连接字符串。
推荐阅读
- python - 在熊猫数据框中使用不同的值移动每个索引的行
- reactjs - React+Redux+Asynch:数据加载级联,上一个完成后开始下面
- tensorflow - 单一管理系统涵盖多个 ML 框架
- visual-studio - 阻止 Visual Studio 使用缓存的 .pdbs
- php - 无法在 mysql 中更新表循环
- java - 如何获取从在 recyclerview 中单击的 firebase 数据库填充的项目的密钥
- ios - 将本地 json 文件解析为对象
- html - 如何阻止谷歌广告减慢我的网站速度?
- java - Docker 外部数据库映射
- ios - UICollectionViewLayout:在prepareLayout中尝试出列单元格会导致stackOverflow