能有端口号"/>
mongodb+srv URI 在 Nodejs 中不能有端口号
我正在使用 nodejs,使用 express js,现在我遇到以下错误
MongoDB connection error: MongoParseError: mongodb+srv URI cannot have port number
在“mongodb atlas”(仪表板)中,这是我的“连接 url”(以“url 编码”格式替换用户名和密码)
mongodb+srv://<username>:<password>@orbitXXXX.huykolo.mongodb/?retryWrites=true&w=majority
所以我在我的“.env”文件中传递了我的“用户名”(电子邮件)和“密码”,这是我的“.env”文件,我哪里错了?
# MongoDB
DB_CLUSTER = "mongodb+srv://XXXXXXXXX:[email protected]/?retryWrites=true&w=majority"
DB_USER = "XXXXXXXXXX"
DB_PASS = "XXXXXXXXXXX"
这是我的 index.js 代码
const username = encodeURIComponent(process.env.DB_USER);
const password = encodeURIComponent(process.env.DB_PASS);
const clusterUrl = process.env.DB_CLUSTER;
const authMechanism = "DEFAULT";
const uri = `mongodb+srv://${username}:${password}@${clusterUrl}/?authMechanism=${authMechanism}`;
export const dbConnect = mongoose
.connect(uri, {
dbName: 'git_flow',
useUnifiedTopology: true,
pkFactory: { createPk: () => new UUID().toBinary() },
useNewUrlParser: true
})
.catch(e => {
console.error('Connection error', e.message)
})
export const db = mongoose.connection;
export default mongoose;
回答如下:
更多推荐
mongodb+srv URI 在 Nodejs 中不能有端口号
发布评论