mongoose 远程连接,我的密码有乱七八糟的字符,报错Error: Password contains an illegal unescaped character
报错的
mongodb: 'mongodb://c666:buyaokan###@ccav.com:27017/zh_db',
改成下面,就好啦
mongodb: 'mongodb://' + encodeURIComponent('c666:buyaokan###') + '@ccav.com:27017/zh_db',
不要尝试破解额。
上面的方法可以不报错,但是实际用的时候,发现会报错
name: 'MongoError',
message: 'Authentication failed.',
ok: 0,
errmsg: 'Authentication failed.',
code: 18,
codeName: 'AuthenticationFailed' }
下面才是解决之道 user 要使用创建的admin账号用户名
mongoose.connect(mongoDbUri, {auth: { "authSource": "admin" },user: "c666",pass: "c666:buyaokan###",poolSize: 10})
特别注意 auth: { "authSource": "admin" }
中的authSource
添加你对应创建的数据库。