如何使用express和mongoose在本地网络中连接到MongoDB

gia*_*n29 3 javascript mongoose mongodb node.js express

我正在使用 express 和 mongoose 设置服务器,我希望它可以在本地网络中的其他机器上使用。已经在 Mongodb 配置文件中将 bind_ip 变量设置为 0.0.0.0。

const connection = mongoose
    .connect(
        "mongodb://192.168.254.104/db",
        {
            useNewUrlParser: true
        }
    )
    .then(() => console.log("Connected to MongoDB"))
    .catch(error => console.log(error));
Run Code Online (Sandbox Code Playgroud)

我试过在我的手机上连接,但服务器响应说它没有找到数据库。

Pra*_*ore 6

首先,您应该在本地运行 MongoDB 服务器。

默认运行端口为:27017

mongoose.connect('mongodb://localhost:27017/', {
    dbName: 'event_db',
    useNewUrlParser: true,
    useUnifiedTopology: true 
}, err => err ? console.log(err) : console.log('Connected to database'));
Run Code Online (Sandbox Code Playgroud)

或者你可以做

mongoose.connect('mongodb://localhost:27017/event_db');
Run Code Online (Sandbox Code Playgroud)


小智 5

这是mongodb连接字符串的格式:

mongodb://[username:password@]host1[:port1][,...hostN[:portN]]][/[database][?options]]
Run Code Online (Sandbox Code Playgroud)

如果您想连接到本地主机数据库,则字符串将如下所示:

"mongodb://localhost:27017/mydb"
Run Code Online (Sandbox Code Playgroud)

其中“mydb”是本地计算机上的数据库名称。