如何从我的node.js和express服务器连接到mongo atlas与mongoose包

zpgglvta  于 11个月前  发布在  Go
关注(0)|答案(1)|浏览(152)

标题:MongoDB Atlas连接问题- ETIMEDOUT错误
正文:

我在尝试将Express服务器连接到MongoDB Atlas时遇到问题,我正在寻求帮助,因为我已经用尽了几种解决方案。下面是相关代码片段:

require('dotenv').config();
const mongoose = require('mongoose');
const uri = process.env.MONGODB_URI;

const connectDB = mongoose.createConnection(uri, {
    useNewUrlParser: true,
    useUnifiedTopology: true
});

const UserSchema = require('../models/User');
const taskSchema = require('../models/Task');
const projectSchema = require('../models/Project');
const MessageSchema = require('../models/Message');

const User = connectDB.model('User', UserSchema);
const Task = connectDB.model('Task', taskSchema);
const Project = connectDB.model('Project', projectSchema);
const Message = connectDB.model('Message', MessageSchema);

module.exports = { connectDB, User, Task, Project, Message };

字符串
我面临的错误如下:

const timeoutError = new error_1.MongoServerSelectionError(`Server selection timed out after ${serverSelectionTimeoutMS} ms`, this.description);
                                     ^

MongoServerSelectionError: connect ETIMEDOUT 13.37.173.41:27017


我不知道如何解决这个问题,我尝试所有的解决方案chatgpt提供给我,也youtube的解决方案,如果有人面临同样的问题,请为我提供一个解决方案

44u64gxh

44u64gxh1#

首先,让你的连接命令在'try-catch'块,这样你就可以有适当的错误消息.检查你的防火墙是否阻止的东西.搜索它的解决方案.今天只有我经历了这一点,并分享我的连接代码下面,如果它可以帮助:

try {
    const connect = await mongoose.connect(process.env.CONNECTION_STRING);
    console.log("Databse Connected With HOST: ",
        connect.connection.host       
    );
    console.log("Databse Connected With NAME: ",connect.connection.name);
} catch (error) {
    console.log("Connection Error: ", error);
    process.exit(1);
}

字符串

相关问题