有没有办法将MongoStore
实例化为数据库并使用“admin”进行身份验证?
像mongoose一样:
var db = mongoose.createConnection('mongodb://myname:mypwd@localhost:27017/mydb', { auth: { authdb:"admin" } });
答案 0 :(得分:1)
当你谈到MongoStore时,你的意思是这个项目 - https://github.com/diversario/connect-mongostore?
如果你这样做,答案是肯定的,它使用与mydb示例的URI部分相同的语法。您只需将用户和密码字段中的值更改为适合您的数据库的值。在下面的代码段中,它连接到端口27101上运行的mongod实例,其用户名为“user”,密码为“password”,位于“admin”数据库中。
new MongoStore('mongodb://user:password@127.0.0.1:27017/admin')
答案 1 :(得分:0)
最好的方法是-
'mongodb://' + mongo_username + ':' + encodeURIComponent(mongo_password) + '@'
+ ip + ':27017/' + dbName+ '?authSource=admin'
如果密码包含特殊字符,则使用encodeURIComponent()