我尝试连接到我的MongoDB localhost,但它就是不连接。发生的事情是,当我转到/admin
时,它只是不断加载,我没有收到任何消息,日志中也没有任何内容。我不知道为什么。这是我的路由器文件,使用的连接:
const express = require('express');
const debug = require('debug')('app:adminRouter');
const mongoose = require('mongoose');
const users = require('../data/users.json');
const adminRouter = express.Router();
adminRouter.route('/').get((req, res) => {
const url = "mongodb://localhost:27017"; // process.env.DBURL
const dbName = "workplace_incident_reporter";
(async function mongo(){
let client;
try {
client = await mongoose.connect(url,
{ useNewUrlParser: true, useUnifiedTopology: true });
debug('Connected to mongoDB');
const db = client.db(dbName);
const response = await db.collection('Users').insertMany(users);
res.json = response;
} catch (error){
debug(error.stack);
}
})
});
module.exports = adminRouter;
这是我的MongoDB Compass窗口的图片。这只适用于URL引用:
2条答案
按热度按时间cclgggtu1#
我将URL从
mongodb://localhost:27017
更改为mongodb://127.0.0.1:27017
68bkxrlz2#
你的函数mongo不是那样运行的!把它改成这样:
请考虑您可以在server.js文件中调用mongoDb连接一次