MongoNetworkError:首次连接时无法连接到服务器[MongoError:身份验证失败。]

时间:2019-07-25 00:28:13

标签: node.js mongodb mongoose mongodb-atlas

我正在尝试连接到我的MongoDB Atlas数据库,但是它不起作用,而且我似乎无法弄清原因。

我确保我在用户名和密码中没有使用非法字符,并且尝试了不同的连接字符串。我已经尝试关闭防火墙。

server.js

const express = require("express");
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const app = express();

app.use(
  bodyParser.urlencoded({
    extended: false
  })
);
app.use(bodyParser.json());

const db = require("./keys").mongoURI;

mongoose.connect( db, { useNewUrlParser: true }  )
  .then(() => console.log("MongoDB successfully connected"))
  .catch(err => console.log(err));
const port = process.env.PORT || 5000; // process.env.port is Heroku's port if you choose to deploy the app there
app.listen(port, () => console.log(`Server up and running on port ${port} !`));

keys.js

module.exports = {
    mongoURI: "mongodb+srv://username:password@mernauth-lksvn.mongodb.net/test?retryWrites=true&w=majority"
};

我用真实的用户名和密码替换了连接字符串中的用户名和密码。



编辑:解决方案 即使我同时使用了我的IP地址和MongoDB Atlas为我建议的默认IP地址,但都没有用。我想我没有一个有效的IP地址,所以一旦我打开了所有IP地址的数据库,它就起作用了!

0 个答案:

没有答案