我正在尝试使用如下连接字符串连接到我的 Mongo 集群:
module.exports = {
MongoURI: MongoURI: 'mongodb+srv://philip:DummyPassword9$@test-cluster-026fd.mongodb.net/test?retryWrites=true'
}
并在 app.js 中设置我的配置:
const express = require('express');
const expressLayouts = require('express-ejs-layouts');
const mongoose = require('mongoose');
const app = express();
// DB Config
const db = require('./config/keys').MongoURI;
// Connect to Mongo
mongoose.connect(db, { useNewUrlParser: true })
.then(() => console.log('MongoDB Connected....'))
.catch(err => console.log(err));
//EJS
app.use(expressLayouts);
app.set('view engine', 'ejs');
// Routes
app.use('/', require('./routes/index'));
app.use('/users', require('./routes/users'));
const PORT = process.env.PORT || 5000;
app.listen(PORT, console.log(`Server started on port ${PORT}`));
但是我没有连接到 Mongo 集群,而是收到错误:
MongoError: authentication fail
我阅读了在网上可以找到的与此问题相关的所有内容,我尝试像这样编码我的密码:
module.exports = {
MongoURI: `mongodb+srv://philip:${encodeURIComponent('DummyPassword9')}$@test-cluster-026fd.mongodb.net/test?retryWrites=true`
}
但我仍然无法连接并收到此错误。我确信我的帐户密码是正确的,我做错了什么?
我是一名优秀的程序员,十分优秀!