MongoJS:MongoError:无法使用正确的凭据连接到服务器

我正在使用这个插件: https : //github.com/mafintosh/mongojs 。

我曾经通过Node.js无需凭证login成功:

var db = mongojs("dbname", []); 

后来我closures了Mongo并重新启动了它,但是这次是用命令:mongod –auth。 我已经有一个用户到pipe理数据库。

然后我试图通过Node.js再次login,但这次用户凭证:

 var db = mongojs("username:password@mydomain.com:8080/dbname", []); 

我也尝试了一种不同的语法:

 var db = mongojs("username:password@mydomain.com:271017/dbname", []); 

我也试过:

 var db = mongojs("username:password@dbname", []); 

正如你所看到的,我已经尝试了很多的语法方法,但没有什么诀窍。

我不得不提到,我使用的证书是好的,我刚刚通过Robo3T(Robomongo)和Mongo Compass成功login了相同的细节。

我也试图从pipe理撤销用户,并将其专门放在dbname,但它没有工作。

我的问题:

什么是正确的方式来login从Node.js的凭据? 请根据我在GitHub上使用和提供的库提供解决scheme。 (如果你有一个更好,更有效的方法,我会很高兴听到另外)。

popup一个半问题:

我注意到,当我强制Mongo要求用户继续使用数据库时,我在Terminal / SSH中收到错误:

 Error: not authorized on <dbname> to execute command { usersInfo: 1.0 } at src/mongo/shell/db.js:1363 

尝试通过我自己的Mac上的terminal执行相同的操作时出现上述错误,并通过远程VPS上的SSH进行操作。

我尽可能把细节讲得很正确,希望已经够清楚了!

谢谢!

find了!

我只需要这个:

 var db = mongojs("mongodb://MYUSERNAME:MYPASSWORD@localhost:27017/DBNAME", []); 

只需用凭据replace大写字母。

真的,我已经search了3个小时以上。