如何解决连接 MongoDB 时出错:`openUri()` 的 `uri` 参数必须是字符串
这是我的脚本:
server.js
require("dotenv").config({ path: "./config.env" });
const express = require("express");
const app = express();
const connectDB = require("./config/db");
// Connect DB
connectDB();
app.use(express.json());
app.use("/api/auth",require("./routes/auth"));
const PORT = process.env.PORT || 5000;
const server = app.listen(PORT,() =>
console.log(`Sever running on port ${PORT}`)
);
console.log("```` DB NAME ````",process.env.DATABASE_CONNECTION);
process.on("unhandledRejection",(err,promise) => {
console.log(`Logged Error: ${err.message}`);
server.close(() => process.exit(1));
});
db.js
const mongoose = require("mongoose");
const connectDB = async () => {
await mongoose.connect(process.env.DATABASE_CONNECTION,{
useNewUrlParser: true,useUnifiedTopology: true,useCreateIndex: true,useFindAndModify: true,});
console.log("MongoDB Connected");
};
module.exports = connectDB;
config.env
PORT=5000
DATABASE_CONNECTION=mongodb://localhost:27017/node_auth
我检查了其他解决方案,但没有一个帮助。
解决方法
这解决了我的问题:
require("dotenv").config({
path:
"C:/Users/.../auth/config.env",});
基本上,写入文件的整个路径。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。