我需要设置与MongoDB的远程连接,但我需要通过mongojs进行设置。
var docdbconn = mongojs('mongodb+srv://mylogin:[email protected]/nameofdatabase?retryWrites=true');
通常我会得到下一个错误:
MongoError: failed to connect to server [cluster0-m1s1a.mongodb.net:27017] on first connect [MongoError: getaddrinfo ENOTFOUND cluster0-m1s1a.mongodb.net cluster0-m1s1a.mongodb.net:27017]
你确定提供的端口是正确的,如果没有指定与doc相关的端口,默认情况下端口27017似乎是设置的。也许您的远程数据库不在此端口上,您需要在连接字符串中手动指定它。
我找到了一个解决方案,所以我使用MongoDB 3.4+的另一个字符串连接,它帮助了我。
var docdbconn = mongojs("mongodb://nickname:[email protected]:27017,cluster0-shard-00-01-m1s1a.mongodb.net:27017,cluster0-shard-00-02-m1s1a.mongodb.net:27017/databasename?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin&retryWrites=true");