【发布时间】:2020-03-24 03:22:54
【问题描述】:
我有一个节点后端正在尝试通过 mongoose 包建立与 mongodb 集群的连接。
使用 nodemon 时,我的 node.js/express 服务器运行,但它从未建立与 mongodb 的连接,几秒钟后,抛出 UnhandledPromiseRejectionWarning: MongoTimeoutError: Server selection timed out after 30000 ms
我真的不知道如何解决这个问题,显然我没有处理我的逻辑中的承诺拒绝,有人可以帮我解决这个问题吗?
const express = require("express");
// const bodyParser = require("body-parser");
const cors = require("cors");
const mongoose = require("mongoose");
require("dotenv").config();
const app = express();
const port = 5000;
//cors middleware
app.use(cors);
app.use(express.json());
const uri = process.env.ATLAS_URI;
//useNewUrlParser parsing mongodb string
mongoose.connect(uri, {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true
});
mongoose.Promise = global.Promise;
const connection = mongoose.connection;
connection.once("open", () => {
console.log("MONGODB connection established");
});
const exereciseRouter = require("./routes/exercises");
const usersRouter = require("./routes/users");
app.use("/exercises", exereciseRouter);
app.use("/users", usersRouter);
app.listen(port, () => {
console.log("server listening on", port);
});
【问题讨论】:
标签: node.js reactjs mongodb express mongoose