如何在本地连接mongoose到mongodb
Posted
技术标签:
【中文标题】如何在本地连接mongoose到mongodb【英文标题】:How to connect mongoose to mongodb locally 【发布时间】:2022-01-06 03:57:49 【问题描述】:我刚开始学习使用节点 JS,但在本地使用社区版本的 mongdb 将 mongoose 连接到 mongodb 时遇到困难。
const app = express();
app.use(bodyParser.json(extended: true))
app.use(bodyParser.urlencoded(extended: true))
app.use(cors());
app.get('/', (req, res)=>
react
)
const connectDB = 'mongodb://127.0.0.1/mydb';
mongoose.connect(connectDB, useNewUrlParser: true, useUnifiedTopology:true) //set up default mongoose connection
let db = mongoose.connection; //Get the connection
db.on('err', console.error.bind(console, 'MongoDB connection error:')); //Bind connection to error event
每当我运行服务器时,我都看不到任何迹象表明数据库已连接并且我没有任何错误,连接不会发生。这是我在运行服务器时在控制台上看到的内容
C:\projects\mongodb\backend>nodemon Server.js
> backend@1.0.0 start
> nodemon Server.js
[nodemon] 2.0.15
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node Server.js`
启动服务器的过程永远不会运行到完成。
【问题讨论】:
我认为数据库连接URL不正确。见Connection string URI format。 global.mongoose = require('mongoose'); // 数据库连接 global.mongoose.connect(db_url, useNewUrlParser: true , function (err) if (err) throw err; console.log('Successfully connected'); ); 非常感谢@MaheshBhatnagar,它已连接。请将您的评论添加到答案部分 【参考方案1】:您可以使用以下代码,
const mongoose = require('mongoose');
mongoose.connect(db_url, useNewUrlParser: true , function (err)
if (err) throw err; console.log('Successfully connected'); );
【讨论】:
为什么会出现全局命名空间污染?只需使用const mongoose = require('mongoose');
以上是关于如何在本地连接mongoose到mongodb的主要内容,如果未能解决你的问题,请参考以下文章
如何在本地使用带有 express 的 graphql 和带有 mongoose 的 mongodb 来检索文档?
将 apollo 服务器与 mongodb mongoose 连接